EUC-JP
EUC-JP(Extended UNIX Code Packed Format for Japanese、日本語EUC)はUNIX上で日本語の文字を扱う場合にもっとも多く利用されている文字コード(符号化方式)のひとつである。UNIX以外のOS上で使われることもある。
1980年代前半、日本語UNIXシステム諮問委員会がUNIXで日本語を扱うための文字コードについて議論を行い、議論の結果をもとに1985年4月に同委員会から報告書がAT&Tに出され、AT&Tにより定められたのがEUC-JPの起こりである。AT&Tから、EUC(Extended UNIX Codeの略)として日本語に限らず多言語に対応できるように定められ、EUCのうち日本語を扱うものを特にEUC-JPなどと呼ぶ。他に、EUC-KR(韓国語)、EUC-CN(簡体中国語)等がある。
EUCのエンコード方式上にASCIIとJIS X 0208文字集合を配置したもので、半角カナ (JIS X 0201) とJIS補助漢字 (JIS X 0212) も含むことができる。半角カナと補助漢字を使用しない場合は、JIS X 0208で規定されている符号化方式「国際基準版・漢字用8ビット符号」と同一となる。ISO/IEC 2022に適合する。
日本語文字はJIS X 0208をGR領域に表現したものを基本としており、2バイトで表現され、1バイト目、2バイト目ともに0x80 - 0xFFの範囲内にある。このため英数字と日本語文字の区別がしやすく、プログラム上での扱いが楽である。ただし、補助漢字は制御文字SS3(シングルシフトスリー、0x8F)に続けて現れるので、都合3バイトを要する。
JIS X 0213:2004に対応するEUCコードはEUC-JIS-2004(2000年初版時はEUC-JISX0213)。
UNIX系OSの標準的な文字エンコードとして広く使用されてきたが、近年(いつ?)ではUTF-8を使用したシステムも普及している。
EUC-JPの亜種
EUC-JPには亜種が存在する。二種類を以下に解説する。
eucJP-msは、オープン・グループ及び日本ベンダ協議会が策定した文字符号化方式。実装例はMySQL v5.0以降等。
CP51932はマイクロソフトがWindowsで使用しているWindows-31JのEUC-JP互換表現。実装例はInternet Explorer4.0以降、EmEditor、秀丸エディタ等。このコードはNECのPC-9800シリーズの漢字コード(9区から12区の特殊文字を除外したもの)をGR表現したような体裁を持つ。ただし、PC-9800シリーズの漢字コードはJIS C 6226-1978をベースにするのに対して、CP51932はJIS X 0208-1990をベースとする点が異なる。
CP51932 | eucJP-ms | ||||||
---|---|---|---|---|---|---|---|
面&区番号 | 1バイト目 | 2バイト目 | 面&区番号 | 1バイト目 | 2バイト目 | 3バイト目 | |
JIS X 0208-1990 (第一水準漢字) |
1面1区 - 8区 | 0xA1 - 0xA8 | 0xA1 - 0xFE | 1面1区 - 8区 | 0xA1 - 0xA8 | 0xA1 - 0xFE | ― |
NEC特殊文字 | 1面13区 | 0xAD | 1面13区 | 0xAD | |||
JIS X 0208-1990 (第二水準漢字) |
1面14区 - 84区 | 0xB0 - 0xF4 | 1面14区 - 84区 | 0xB0 - 0xF4 | |||
NEC選定IBM拡張文字 | 1面89区 - 92区 | 0xF9 - 0xFC | ― | ― | ― | ||
ユーザ定義文字 (前半) |
― | ― | ― | 1面85区 - 94区 | 0xF5 - 0xFE | 0xA1 - 0xFE | |
JIS X 0212-1990 (前半) |
2面1区 - 11区 | 0x8F | 0xA1 - 0xAB | 0xA1 - 0xFE | |||
JIS X 0212-1990 (後半) |
2面16区 - 77区 | 0xB0 - 0xED | |||||
IBM拡張文字 (JIS X 0212 以外) |
2面83区 - 84区 | 0xF3 - 0xF4 | |||||
ユーザ定義文字 (後半) |
2面85区 - 94区 | 0xF5 - 0xFE |
参考文献
- 中原康: 日本語処理技術, 電気学会雑誌, 第106巻, 第12号 (1986年12月), pp.1198-1202.
- 小野芳彦: UNIXの日本語化の実現方法, 情報処理, Vol.27, No.12 (1986年12月), pp.1393-1400.
- 中原康: 日本語EUCの定義と解説, Revision 1.7, UI-OSF-USLP共同技術資料 (1991年12月10日).
テンプレート:文字コードde:Extended UNIX Coding#EUC-JP en:Extended Unix Code#EUC-JP fr:Extended Unix Coding#EUC-JP zh:EUC#EUC-JP