1970年代は7ビット長でしか通信できない場合が多かったので、カタカナを7ビット長で表現する必要があった。このため「JIS X 0201 7単位表」が用意された。同様に、ISO 2022にも7ビット表と8ビット表の2種類が用意された。
以後、1981年(昭和56年)にIBM PCを発表するまで、IBMはこの文字コード体系を使っていくことになる。
JIS X 0201 7単位表
「JIS X 0201――バックスラッシュと円マーク」では JIS X 0201 8単位表を紹介したが、同じ規格で7単位表というものが存在する。
当時、7ビット長でしか通信できない場合が多かったので、カタカナを7ビット長で表現する必要があったのだ。
まず、JIS X 0201 7単位表 を以下に示す。白色の部分が「図形文字」、薄い黄色の部分は「制御文字」、グレーの部分は「未定義」である。
当時、7ビット長でしか通信できない場合が多かったので、カタカナを7ビット長で表現する必要があったのだ。
まず、JIS X 0201 7単位表 を以下に示す。白色の部分が「図形文字」、薄い黄色の部分は「制御文字」、グレーの部分は「未定義」である。
JIS X 0201 8単位表
参考として JIS X 0201 8単位表 表を再掲する。
英数字とカタカナの切り換え
では、7ビット長の通信で、英数字とカタカナが混在していた場合はどうするか。
JIS X 0201 では、次のようなルールが定められている。
JIS X 0201 では、次のようなルールが定められている。
- 何も指定しないときにはカナ表を使う。
- SIコード(0x0F)が現れたら、カナ表に切り換える。
- SOコード(0x0E)が現れたら、英数表(ASCIIと同じ配列)に切り換える。
ISO 2022 7ビット
JIS X 0201 の SI/SO は日本語カタカナ表示のための苦肉の策として導入されたが、
これを汎用化し、複数の表を切り換える国際標準化方式が ISO 2022 である。
ISO 2022 も、7ビットと 8ビットの2種類に分かれる。まず、7ビット表を以下に示す。薄い緑色部分は「C0領域」、薄いピンク色の部分は「GL領域」と呼ぶ。C0領域の部分は制御文字として、DL領域の部分は図形文字(実際に表示する文字)として使うことが定められている。
表の切り替えは、ESC(0x1B)と制御文字を用いて行われる。たとえば ESC ( @ (0x1B + 0x28 + 0x40)なら、ASCII表への切り替えを示す。
これを汎用化し、複数の表を切り換える国際標準化方式が ISO 2022 である。
ISO 2022 も、7ビットと 8ビットの2種類に分かれる。まず、7ビット表を以下に示す。薄い緑色部分は「C0領域」、薄いピンク色の部分は「GL領域」と呼ぶ。C0領域の部分は制御文字として、DL領域の部分は図形文字(実際に表示する文字)として使うことが定められている。
表の切り替えは、ESC(0x1B)と制御文字を用いて行われる。たとえば ESC ( @ (0x1B + 0x28 + 0x40)なら、ASCII表への切り替えを示す。
94文字集合
ISO 2022 のGLでは、慣習的に、0x20 をスペース(SP)、0x7F を削除(DEL)に割り当てる。したがって、実際に図形文字として利用できるのは 0x21~0x7E の 94文字ということになる。これを 94文字集合と呼ぶ。
ISO 2022 では、GLが複数バイトになることも許している。日本語全角文字(JIS X 0208)では、GLは2バイトになっている。さらに、3バイト、4バイトも実現可能である。
ISO 2022 では、GLが複数バイトになることも許している。日本語全角文字(JIS X 0208)では、GLは2バイトになっている。さらに、3バイト、4バイトも実現可能である。
ISO 2022 8ビット
次に、ISO 2022 8ビット表を以下に示す。制御文字は C0, C1 の2つ、図形文字は GL, GR の2つに拡張される
参考サイト
- ISO 2022:Wikipedia
- JIS X 0201――バックスラッシュと円マーク:ぱふぅ家のホームページ
- Vim: 文字コードがiso-2022-jpのときは:脳卒中左片麻痺になりました
- Bamboo lath:CodeIgniterでISO-2022-JPでメールを送信すると特定の日本語で文字化け:livedoor Blog
- mailコマンドでISO-2022-JPのテキストメールが送信できない:Linuxの環境設定に関するメモ
(この項おわり)