拡張 Un*x 符号

EUC (拡張 UNIX 符号)

[1] EUC (拡張 UNIX 符号) は、 UNIXASCII と互換性を保ちつつ非ASCII文字を使うための枠組みとして考案された符号化方式です。

符号化文字集合

[2] EUC 符号化文字集合は次のように構成されます。

0x000x1F
C0
0x20
SPACE
0x210x7E
ISO/IEC 646 新IRV 図形文字集合
0x7F
DELETE
0x800x9F
C1 (0x8ESS2, 0x8FSS3)
1*(0xA00xFF)
G1 (図形文字集合)
0x8E 1*(0xA00xFF)
G2 (図形文字集合)
0x8F 1*(0xA00xFF)
G3 (図形文字集合)

ただし、 G1, G2, G3 は任意の 94 または 96図形文字集合をそれぞれ高々1つずつ使用します。 図形文字集合は1バイトに限らず、2バイトでも3バイトでもそれ以上でも構いません。 (どんな図形文字集合の組合せを使うかによって、 具体的な符号化文字集合が確定します。)

[3] EUC の符号の構造は、 ASCII と互換であること (ASCII と同じオクテットは常に ASCII と同じ文字を表すこと) と ISO/IEC 2022 と互換であること (EUCオクテット列ISO/IEC 2022オクテット列でもあること) が大きな特徴となっています。この特徴から、 EUC の制定以前から使われていた UNIXソフトウェアを修正せずとも EUC が使えます。

EUC の実現値

[4]

通称G1G2G3
古い日本語EUCJIS X 0208‐1983 (2バイト)JIS X 0201 片仮名用図形文字集合 (1バイト)外字 (予約)
EUC-JPJIS X 0208‐1990 (2バイト)JIS X 0201 片仮名用図形文字集合 (1バイト)JIS X 0212‐1990 (2バイト)
eucJP-openJIS X 0208‐1990 (2バイト)JIS X 0201 片仮名用図形文字集合 (1バイト)JIS X 0212‐1990 および拡張文字 (2バイト)
EUC-JISX0213JIS X 0213:2000 第1面 (2バイト)(JIS X 0201 片仮名用図形文字集合 (1バイト))JIS X 0213:2000 第2面 (2バイト)
EUC-JIS-2004JIS X 0213:2004 第1面 (2バイト)(JIS X 0201 片仮名用図形文字集合 (1バイト))JIS X 0213:2004 第2面 (2バイト)
EUC-CNGB 2312‐80 (2バイト)(使用しない)(使用しない)
EUC-KRKS X 1001 (2バイト)(使用しない)(使用しない)
EUC-TWCNS 11643‐1992 第1面 (2バイト)CNS 11643‐1992 第2面 (2バイト)CNS 11643‐1992 の残りの面 (3バイト)
EUC-CCCII-FT
EUC-KP
ISO/IEC 8859 各部ISO/IEC 8859 各部右半面 (1バイト)(使用しない)(使用しない)
TIS 620TIS 620 右半面 (1バイト)(使用しない)(使用しない)

拡張

[5] DECの文字コード各種は EUC に独自の構造を追加したものでした。

[6] GBK, GB 18030, UHCEUC に独自の構造を追加したものでした。

関連

固定長EUC

メモ