コードポイント、コード位置とは、テーブル内の特定の位置のことで、その位置には意味が割り当てられています。テーブルは、1次元(列)、2次元(スプレッドシートのセルなど)、3次元(ワークブックのシートなど)など、任意の次元数で構成できます。
技術的には、コードポイントとは、量子化されたn次元空間における一意の位置であり、その位置には意味的な意味が割り当てられています。この表には、離散的な(整数)正の位置(1、2、3、4など、ただし小数ではない)があります。
コードポイントは、多数の正式な情報処理および電気通信規格で使用されています。[ 1 ] [ 2 ]例えば、ITU-T勧告T.35 [ 3 ]には、電気通信機器(元々はファックス機)の製造国または運用国を示すことができる一連の国コードが含まれています。T.35では、アルゼンチンはコードポイント0x07、カナダは0x20、ガンビアは0x41などで表されます。
コードポイントは文字エンコーディングでよく使用され、コードポイントは特定の文字に対応する数値です。文字エンコーディングでは、コードポイントは通常、単一の文字素(通常は文字、数字、句読点、または空白)を表しますが、記号、制御文字、または書式設定を表す場合もあります。[ 4 ]特定のエンコーディング/文字セット内のすべての可能なコードポイントの集合が、そのエンコーディングのコード空間を構成します。[ 5 ] [ 6 ]
例えば、文字エンコーディング方式ASCIIは、0 hexから7F hexの範囲の128個のコードポイントで構成され、Extended ASCIIは、0 hexからFF hexの範囲の256個のコードポイントで構成され、Unicodeは、0 hexから10FFFF hexの範囲の1,114,112個のコードポイントで構成されます。Unicodeコード空間は、17個のプレーン(基本多言語プレーンと16個の補助プレーン)に分割され、各プレーンには65,536(= 2 16 )個のコードポイントがあります。したがって、Unicodeコード空間の合計サイズは17 × 65,536 = 1,114,112です。
Unicodeでは、特定のビット列をコードユニットと呼びます。UTF -32エンコーディングでは、すべてのコードポイントは 1 つの 4バイト(オクテット)のバイナリ数としてエンコードされます。UTF -16エンコーディングでは、異なるコードポイントは 1 つまたは 2 つの 2 バイトのコードユニットのシーケンスとしてエンコードされます。UTF -8エンコーディングでは、異なるコードポイントは 1 ~ 4 バイトの長さのシーケンスとしてエンコードされ、自己同期コードを形成します。詳細は、Unicode エンコーディングの比較を参照してください。コードポイントは通常、抽象文字に割り当てられます。抽象文字は、グラフィカルなグリフではなく、テキストデータの単位です。ただし、コードポイントは将来の割り当てのために予約されたままにしておくこともできます (Unicode コード空間の大部分は未割り当てです)、または他の指定された機能を与えることもできます。
Unicodeでは、コードポイントとそれに対応する抽象文字との区別は明確ではないが、他の多くの符号化方式では、単一のコード空間に対して多数のコードページが存在する場合があり、その区別は明白である。
コードポイントの概念は、デジタル情報処理およびデジタル通信に関する初期の規格にまで遡る。
Unicode では、コード ポイントは、1980 年代に文字エンコーディング開発者が直面した難しい難問に対する Unicode の解決策の一部です。[ 7 ]より大きな文字セットに対応するために文字ごとにビット数を増やすと、その設計上の決定は、ラテン文字ユーザー (当時コンピュータユーザーの大多数を占めていた) にとって、当時希少だったコンピューティング リソースの許容できない浪費にもなります。なぜなら、そのようなユーザーの場合、余分なビットは常にゼロになるからです。[ 8 ]コード ポイントは、文字と特定のビット列との間の直接的な 1 対 1 の対応という古い考え方を破ることで、この問題を回避します。
形式:非表示だが隣接する文字に影響する。行/段落区切り文字を含む。
コンピュータでは、抽象文字は内部的に数値としてエンコードされます。完全な文字エンコーディングを作成するには、エンコードするすべての文字のリストを定義し、数値が文字をどのように表すかについて体系的な規則を確立する必要があります。抽象文字をコード化するために使用される整数の範囲は、コード空間と呼ばれます。このセット内の特定の整数は、コードポイントと呼ばれます。抽象文字がコード空間内の特定のコードポイントにマッピングまたは割り当てられると、エンコードされた文字と呼ばれます。
1980 年代初頭までに、ソフトウェア業界は、複数の文字エンコーディング規格の使用に伴う問題に対する解決策の必要性を認識し始めていました。特に革新的な取り組みはゼロックスで開始されました。ゼロックス スター ワークステーションは、数百万文字の可能性のある単一の文字セットをサポートできるマルチバイト エンコーディングを使用していました。
大きな重み値