符号位置
[カテゴリ:仕様]
符号位置(code point, code table position)とは、文字コード表の中の位置のことです。各位置には計算機上で用いられる符号化表現が対応します。
1バイトコードにおける符号位置
ISO/IEC 646やASCII、JIS X 0201のような1バイトコードでは、符号位置はx/yのような形で示されます。xとyはそれぞれ0以上の整数で、符号表の列と行を表します。x/yの形で示された符号位置はビット組み合わせに一意に対応します (参照: ISO/IEC 646:1991の5.2節)。
例えば、ISO/IEC 646国際基準版(ならびにASCII)においてラテン大文字Aが割り当てられている符号位置は4/1です。つまり、符号表の列番号4、行番号1の場所です(0から数えるので、行番号1は上から2つ目の行です)。この位置に対応する符号化表現は7ビットのビット組合せ 1000001、16進表記では41になります。
JIS X 0208における符号位置
JIS X 0208では、区点番号が符号位置の表現として用いられます。区点番号は区番号と点番号の組合せです。区番号と点番号はそれぞれ1から94までの整数です。94×94文字のコード表の行と列にそれぞれ対応します。例えば、漢字「亜」のある位置は、16区1点、つまりコード表の上から16行目、左から1列目のマスです。
各区点は、JIS X 0208が定める2バイトのビット組み合わせに一意に対応します。区番号が第1バイト、点番号が第2バイトにあたります。例えば、16区1点という位置は、2バイトのビット組合せ 0110000 0100001 (16進では 30 21) に対応します。
区点番号は、「16区1点」を「16-01」のように略記することがしばしばあります。なお、巷の漢字辞典などでは「1601」のようにあたかも4桁の整数のように記すことがありますが、これは誤解を招く表記で、区点番号はあくまでも2つの整数の組です。
JIS X 0213における符号位置
JIS X 0213では94×94の符号化文字集合を2つ定義しています。このうち漢字集合1面はJIS X 0208の上位互換、漢字集合2面は新たに定義された面です。
漢字集合1面・2面のそれぞれの中については、JIS X 0208と同じ区点番号で符号位置を表せます。区点番号の先頭に、1または2の面番号を付して、例えば「1面16区1点」のように表すことで、符号位置を一意に特定できます。これが面区点番号です。
(関連項目: 面区点番号)
UnicodeおよびISO/IEC 10646における符号位置
UnicodeとISO/IEC 10646では、U+nnnn のような形で符号位置を表します。例えば U+4E00 のようにします。16進で表すので、各桁は、 0, 1, 2, ..., 9, A, ..., F の16文字のいずれかです。
BMP内の符号位置は U+0000 から U+FFFF までの4桁で表せます。BMPを超える分については、面に対応する桁をつけて5桁あるいは6桁で表します。例えば、U+29E3D のように面02の中の位置を表します。
最終更新時間:2016年09月27日 00時19分50秒