« 【ノンステップバス】主観でなく、客観で。ユニバーサル・デザインの提案を。 | メイン | 【ワープロ専用機】シャープ書院 WD-A30 »

2010-12-13

【文字コード】JEFコード

 APCSと聞けば、FACOM9450などの富士通の往年のパソコンを連想する人もいる。残念ながらFACOM9450の実機は触った経験をもたない。


【写真】APCS IV V1.0 使用者の手引き(1989,1992)

 これがAPCS IVの説明書。汎用コンピュータ用のOSをパソコンで動作させたコものに近い。ワープロソフトのOASYSもOSとして扱われているのが興味深い。

 日本語文字コードが、JEFコードを使っている。なお、1バイト文字は、JIS1バイトコードを使っている。JEFは説明書によれば、
Japanese processing Extended Feature 
の略としている。

 コード表の一覧の一部を示す。


     JEFコードリスト 第一水準漢字より

 JIS漢字コードが制定された最初のコードJIS C6226(1978)の配列に準拠。
 16進数コードは上位7ビット+下位7ビット各(21H~7EH:94文字)で構成されている。例えば空白2121H。ひらがなの2422Hとなる。JEFは、この16進数コードに8080Hを加えて上位下位8ビット化した体系である。
  空白 2121H+8080H=A1A1H
         2422H+8080H=A4A2H

説明書によれば、APCSで扱える2バイト(全角文字)は、
 JIS第1水準  2965字
 JIS第2水準  3384字
 非漢字        453字
 JEF拡張非漢字 1010字
   外字       3102字
 JEF拡張漢字  4039字(オプション)
最大14953文字が扱える。

 説明書で分かる範囲のコードは次のとおり。
 第1水準  A1A1H-CFD3H
 第2水準  D0A1H-F3FEH
   拡張漢字  41A1H-70FCH(途中未定義コードあり)
 拡張非漢字 71A1H-7FFDH(途中未定義コードあり)

 8ビット化したといえども、1バイト文字2バイト文字の区別ができない。シフトJIS(MS漢字コード)は、上位部分をJIS1バイトコードの制御文字以外の未定義領域(80H-A0H,E0H-FFH)を持ってくることにより、強制的に2バイト文字として認識させている。
 JEFの1バイト2バイト文字混用は、次の処理体系になっている。
外部ファイル(EBCDIC)
漢字開始 28H(KSシフト) 38H(KIシフト)   漢字終了 29H(Aシフト)
内部ファイル(JIS)
漢字開始 1B6DH(ESC-m)   漢字終了 1B6EH(ESC-n)

  漢字開始、終了コードを入れて1バイト文字の混在が可能になる。簡単に言うと漢字かな文字などの全角文字を扱うときは、区切り用のコードが必要になる。JEFも上位と下位に80Hずつ加え(つまり8ビットの上位桁に1にするだけ)、ASCIIの未定義領域に割り当てて強制的に区分するようにできたのだが、EBCDICを扱うため、区切りコードをつけたと思われる。