技術情報
JISコード
漢字を表示するためには8ビットの256とおりでは足りません。そこで日本語を表示するためには 2バイトを用いた文字コードが必要になります。現在使われている日本語の文字コードの基本になるのは JIS X208で定められた、いわゆる「JISコード」です。
このコードは94の「区」にそれぞれ94の「点」を設けた「区点」に文字を配置します。つまり94×94=8,836個のマトリクスに漢字などを割り当てているわけです。
句点による文字種の区分 | |||||
---|---|---|---|---|---|
区 | 文字数 | 文字種 | 第一バイト | ||
JIS | シフトJIS | EUC | |||
1-2 | 147 | 各種記号 | 0x21~0x22 | 0x81 | 0xA1~0xA2 |
3 | 62 | 数字、ローマ字 | 0x23 | 0x82 | 0xA3 |
4 | 83 | ひらがな | 0x24 | 0x82 | 0xA4 |
5 | 86 | カタカナ | 0x25 | 0x83 | 0xA5 |
6 | 48 | ギリシャ文字 | 0x26 | 0x83 | 0xA6 |
7 | 66 | キリル文字 | 0x27 | 0x84 | 0xA7 |
8 | 32 | 罫線素片 | 0x28 | 0x84 | 0xA8 |
9-15 | 0 | 未定義 | 0x29~0x2F | 0x85~0x88 | 0xA9~0xAF |
16-47 | 2965 | 第一水準 | 0x30~0x4F | 0x88~0x98 | 0xB0~0xCF |
48-84 | 3390 | 第二水準 | 0x50~0x74 | 0x98~0x9F 0xE0~0xEA |
0xD0~0xF4 |
85-94 | 0 | 未定義 | 0x75~0x7E | 0xEB~0xEF | 0xF5~0xFE |
区点に割り当てられた文字をコードで表現するためJISコードでは区(第一バイト)に 21~7E、点(第二バイト)にも21~7Eのコードを与えます。
このコードは前ページで紹介したASCIIの文字コードの範囲とちょうど重なりますので、そのままではASCII(JIS X201)の1バイト文字と共存できません。
そこで、以下のようなエスケープシーケンスを使って2バイト文字(JIS X208)と1バイト文字(JIS X201)を切り換えます。
エスケープシーケンス | コード | 意味 |
---|---|---|
[esc](B | 0x1B2842 | 以降はASCII |
[esc](J | 0x1B284J | 以降はJIS X201 |
[esc]$B | 0x1B2442 | 以降はJIS X208 |
コンピュータでは普通あまり使われていないコードですが、全部が7ビットで表現できる範囲におさまるため、インターネットでメールを日本語で送るのには現在も使われています。
インターネットでは7ビットしか転送しないサーバーが存在するため、8ビットを必要とする シフトJISやEUCコードではなく、7ビットで済むJISコードを使います。