EUC
EUC | |
---|---|
术语名称 | EUC |
英语名称 | EUC |
别名 | Extended Unix Code |
EUC[1] 是主要为中日韩语言使用的多字节字符编码系统,也指这个系统下的一系列字符编码。
字符编码特征
EUC 编码是基于 ISO 2022 要求的编码,按照规则,图形字符占据 0x21-7E 范围的 94 个码位,或者说,在可以使用八位字节的情况下,是 0xA1-FE 。 EUC 编码都使用其中的后者,实际字符集大小为 94² 、 94³ 或 94⁴ 。这些编码中,0x80-9F 仍然用作 C1 控制码,这些是单字节字符;剩余部分则用多字节编码对应语言中的字符。
EUC 编码中存在四种编码范围,分别称为 code set 0-3 。其中:
- code set 0 是 0x00-7F ,总是由 ISO 646 的变体填充。
- code set 1 是双字节字符,直接由两个 0xA1-FE 的字节构成。
- code set 2 是以
0x8E SS2
开头的多字节字符。 - code set 3 是以
0x8F SS3
开头的多字节字符。
但是因为变体较少,大概确认下各个实例如何处理各区即可。
纯技术上说, EUC 编码仅指代用相关命名的编码。如果只看这一特征,所有 ISO 8859 都是单字节但是符合这一特征的,一般不视为 EUC 编码;反过来,部分衍生编码中,会进一步允许特定的 C1 字符(即 ISO 2022 中用于切换字符集的 0x8E SS2 、 0x8F SS3 )开始更多字节的编码,以进行编码空间的扩展,这样也视为 EUC ;但这里如果使用太多,程度上明显偏移 EUC 系列特征一般就不再视为 EUC 系列编码了。
字符编码实例
EUC-CN ,是 GB 2312 的一种实现,前半部分为 ISO 646-IRV ,后半部分是区位码的平移,见 GB 2312#EUC-CN 。没有使用 SS2/SS3 开始的序列。
EUC-JP ,也叫 Unixized JIS (UJIS) 或 AT&T JIS ,前半部分是 ISO 646-JP ,后半部分是 JIS X 0208 字符集在两字节均为 0xA1-FE 的部分,额外使用 0x8E.A1-8E.FE 的区域编码 JIS X 0201 即半角片假名, 0x8F 开始再接两个 0xA1-FE 的范围允许三字节的编码,相当于 JIS X 0212 。
EUC-JIS-2004 与 EUC-JP 类似,但是三字节范围替换为 JIS X 0213 。
EUC-KR ,也叫 Wansung (“完成”),前半部分为 ISO 646-KR 或 ASCII ,后半部分是 KS C 5601 或 KS X 1001 。没有使用 0x8E-8F SS2/SS3
开始的序列。
EUC-TW ,按台湾地区标准 CNS 11643 支持全部 16 个平面每个平面 94² 的字符,前半部分为 ASCII ,后半部分是变长标准。 0xA1-0xFE 的双字节用于表示第一个平面,而后续则用 0x8E.A?.??.?? 的四字节字符,第二个字节用 0xA1-0xB0 这些从 0xA1 开始的码位指定具体平面序号,然后三四字节指定平面内 94×94 的具体位置。没有使用 0x8F SS3
开始的序列。
使用情况
EUC-CN 和 EUC-KR 都曾是两国常用编码,并且有大量场合在使用,只是后续 EUC-CN 被其扩展微软代码页 936 和 GB 18030 代替, EUC-KR 被其扩展韩文统一编码(Unified Hangul Code, Tonghabhyeong Hangeul Kodeu, 统合型韩文编码)即微软代码页 949 代替,但两个后者都是不再符合 EUC 规则的编码。但 EUC-JP 本身就没有 Shift JIS 使用广泛, EUC-TW 也不如 Big5 常用,这两个编码在相关的国家或地区就相对不常见了。其他 EUC 编码本身就很少见就不提了。
常见字符集与字符编码 | |||
---|---|---|---|
原始编码 | 电报码( Morse 电码) | BCD 码、 IBM 卡编码 | - |
早期二进制码位分配的编码 | - | BCDIC、EBCDIC | ASCII (ISO 646-US 、 ISO 646-IRV) |
地区字符编码 | - | - | ISO 8859 : ISO 8859-1 、 ISO 8859-2 、…… |
- | - | EUC 类编码,含第一个国标字符集 GB 2312 , 其编码 EUC-CN(IBM 代码页 936)也称 GB 2312 | |
多地区字符编码通过切换串兼容 | - | - | 通用框架: ISO 4873、ISO 2022 ,含 ISO-2022-CN ISO-2022-CN 的简化: HZ 编码 |
无需切换串的自同步编码 | - | UTF-EDCBIC | 字符集 Unicode / ISO 10646 ,有常见编码 UTF-8、 UTF-16 、 UTF-32 及废弃编码 UTF-1 、 UTF-7 |
地区字符编码扩充 | - | - | 国标系列后续:GBK(微软代码页 936)、 GB 18030(微软代码页 54936) |
- ↑ 全称为 Extended Unix Code ,译为扩展 Unix 编码,全称只用于解释这个词语,通常使用中只使用缩写。