No. 411/622 Index Prev Next
Path: titcca!icot32!etlcom!gama!ume!crimson!onlnews!keibun
From: keibun@onlnews.kek.JUNET (Hirofumi Fujii)
Newsgroups: fj.kanji
Subject: Re: JIS X 0202
Message-ID: < 570@crimson.kek.junet> 
Date: 12 Apr 89 10:20:23 GMT
Sender: news@crimson.kek.junet
Reply-To: keibun@onlnews.kek.JUNET (Hirofumi Fujii)
Distribution: fj
Organization: KEK, Tsukuba, Japan
Lines: 52

fj.kermitからこちらに移りました。JIS X 0202
の話です。
 
もとは私がJIS X 0202の記述に誤解を招きやすい部分があると
ブチブチ言ったことに対しJIS原案改正委員会委員長の和田さん@東大
から、大変ご丁寧な回答が寄せられたことから始まっています。
 
さて坂本さん@ソニーのブチブチに対するフォローです。
 
EUCがJIS X 0202準拠かどうかというお話でした。まずハッ
キリさせておきたいのはEUCはあくまで内部コードであるということで
す。内部コードというのは、ある意味で、その計算機にとって最も効率よ
く資源が利用できるように定められている(少なくともそうしたいと思っ
て定められている)符号であってそれがたとえ情報交換用符号と大きく異
なっていても閉じた計算機システムであれば原理的には何の問題もないで
しょう。外のシステムや端末に対してコードを送る時に情報交換用符号及
びその拡張法に従えば良いだけの話で、内部コードがJIS X 0202
に従っていないからと言ってブチブチいうのは「少し」筋違いだと思いま
す。
 
「少し」といって「全く」と言わなかったのは、上の議論はあくまでも建
前の議論であって、実際には大部分の計算機は通信回線に内部コードを
そのまま流し込んでくるのが現状ですから、その意味ではJIS X
0202に従うべしという主張もできると思うからです。
 
さて、EUCが内部コードであるとしても何故あれだけJIS X 
0202の拡張法に合致するようにしておきながら、SS2でG0にシフ
トして、なおかつ半角カタカナコードの8ビット目をたてたかという点に
関して私の見解を述べます。しかし私はEUCの正式な規格も知らないの
で、完全にハズレかも知れません。以下はあくまでも「私が定めたので
あったなら、こういう理由によるものだ」という風にお読み下さい。
 
上に述べたようにEUCは内部コードとして使われるものですから、シス
テムにとって都合がよくなければなりません。今の話は特にテキストファ
イルに関連する話ですので、テキスト関連のツール、特にエディタにとっ
て都合よくできている必要があります。エディタにとってJIS7やシフ
トJISは大変扱いにくいものです。その理由は逆向きに戻る時に、現在
位置の1バイトを見ただけでは1バイト戻るのか2バイト戻るのか判定で
きないということです。必ず先読み(今の場合戻るのだから後ろ読みとい
うべきかな?)しなければなりません。EUCでも半角カタカナを正直に
G0だから8ビット目を立てないことにすると、もう1バイト戻ってみな
いとローマ字との区別ができません。もし半角カタカナの8ビット目を立
ててあれば8ビット目が立っていれば必ずその1つ前とセットで扱えばよ
いことになります。もしその1つ前がやはり8ビット目が立っていれば漢
字ですし、SS2であれば半角カタカナです。このおかげで、「1文字」
分ファイルポインターを戻すのが非常に楽になります。
 
私はキットこれが理由だと思っています。EUCに詳しい人のフォローを
お願いします。
----------------------------------------------------------------------------
藤井啓文@物理オンライン.高エネルギー物理学研究所(KEK)
JUNET keibun@kek.junet   |BITNET  KEIBUN AT JPNKEKVM  |HEPNET KEKVAX::KEIBUN
Next
Continue < 21105@wsgw.ws.sony.junet>