JIS X 0201

前述したISO 646に基づいて「カタカナ」を使えるようにした符号化文字集合がJIS X 0201です。ここでカタカナとはいわゆる「半角カタカナ」です。これらには濁音・半濁音・促音・拗音が含まれますので7ビットの128コードポイントではすべてを表現することはできません。そこで、JIS X 0201では

  1. 7ビットコードポイント表を2種類用意し切り替えて使用する
  2. 8ビットコードを使用する

コードポイントを拡張しています。どちらのコード表を使用する場合でもISO 646に準拠してC0制御文字領域(0x00〜0x1f)には制御文字コードが割り当てられています。また、円の通貨記号(¥)は0x5cに、0x7eにはオーバーラインが割り当てられています。

7ビット構造のJIS X 0201

7ビット構造のJIS X 0201方式を採る場合、制御コードのSI(0x0e)/SO(0x0f)によって切り替えます。従って、コードの途中だけを取り出して文字を判定することはできません。必ず現在がどのモード(SI/SO)を判定する必要があります。このような文字コード系をモーダルな文字コード系と呼ぶことがあります。

7ビット構造JISX0201コード表

8ビット構造のJIS X 0201

8ビット構造のJIS X 0201の場合すべてのカナが256コードポイントに収まりますのでSI/SOの切り替えは不要になります。下記のコード表のように7ビットコードに分割した場合に、C0制御文字領域(0x00〜0x1f+0x20)にあたる0x80〜0x9f(+0xa0)を未定義とし0xa1から図表文字を割り当てているため7ビット構造のJIS X 0201に対するカナ文字への変換は容易にできます。(SI/SOまでは考慮されませんが、0x80を減算すれば7ビット構造のカナ文字になります。)

8ビット構造JISX0201コード表