第2章 区点コード
いわゆる「区点コード」と呼ばれているものは、コードというよりも漢字の格納位置を定めた配列と考えたほうがわかりやすいと思います。これを「符号化文字集合」といいます。符号化文字集合を定めた規格には、JIS X 0208 と JIS X 0212 があります。
2.1 JIS X 0208
私たちが普段使っている日本語の2バイトコードは、JIS X 0208 というJIS規格で規定されているものです。この規格は、日本語文で通常用いられる文字や記号(仮名・漢字・アルファベット・算用数字・各種記号など)を含み、その符号を規定しています。
2バイトの符号値は、第1・第2バイトとも0x21~0x7E(EUCでは0xA1~0xFE、以下略)ですが、JIS X 0208ではこの範囲の符号値を直接規定してはいません。JIS X 0208 では、第1バイトを区番号、第2バイトを点番号といい10進数で表現します。範囲はどちらも1~94です。したがって、1つの区は94個の点からなり、全体の符号空間は、1区1点から94区94点まで、94×94=8836文字分あります(94という数は、ISO 2022 で規定されるエンコーディングで規定されている数です)。この区番号と点番号をつなげて10進数4桁で表記したものを、俗に区点コードといいます。
表2.1-1 区点コードの例 文字 区点コード 「 」 0101 「◆」 0201 「亜」 1601
符号化文字集合内での文字の割り当ては次のようになっています。
表2.1-2 X 0208 での文字の割り当て 区 内容 1区~2区 各種記号 3区 算用数字、大小ローマ字 4区 ひらがな 5区 カタカナ 6区 大小ギリシア文字 7区 大小キリル文字 8区 罫線素片 9区~15区 未定義 16区~47区 第一水準漢字 48区~84区 第二水準漢字 85区~94区 未定義
未定義の部分に各メーカー等が独自に文字を割り当てている場合があります。このような文字は機種依存文字・ベンダー固有文字などと呼ばれ、情報交換の上で問題となっています。このような現状への反省から、JIS X 0208-1997 において、明確に未定義部分の使用は禁止されました。
なお、秀丸エディタ用のマクロ、外字チェックマクロも作ってあります。秀丸でインターネットメール等を書いているかたはご利用ください。
2.2 JIS X 0212
JIS X 0208 は広く普及していますが、それに伴って JIS X 0208に不足している文字を扱いたいとの要望も高まってきました。そこで、補助漢字 JIS X 0212が制定されました。JIS X 0212はJIS X 0208と類似の構成を持つ2バイトコードの規格です。漢字だけでなく、JIS X 0208 で不足していた記号やアルファベットなどの非漢字も含まれています。
しかし、パソコン等で使われている MS 漢字コードではこのコードを割り当てる場所が無いこと、また、汎用機などでは既に各メーカーが JIS X 0208 を独自拡張したコードがあり JIS X 0212 と多重定義となってしまう文字があること等から X 0212 を実装した環境は筆者の知る限り、日本語 EUC のみとなっています。
表2.2-1 X 0212 での文字の割り当て 区 内容 1区 未定義 2区 各種記号 3区~5区 未定義 6区 ギリシア文字補助 7区 キリル文字補助 8区 未定義 9区~11区 ラテンアルファベット補助 12区~15区 未定義 16区~77区 補助漢字 78区~94区 未定義