EUC
EUC | |
---|---|
术语名称 | EUC |
英语名称 | EUC |
别名 | Extended Unix Code |
EUC[1] 是主要为中日韩语言使用的多字节字符编码系统,也指这个系统下的一系列字符编码。
字符编码特征
EUC 编码是基于 ISO 2022 要求的编码,按照规则,图形字符占据 0x21-7E 范围的 94 个码位,或者说,在可以使用八位字节的情况下,是 0xA1-FE 。 EUC 编码都使用其中的后者,实际字符集大小为 94² 、 94³ 或 94⁴ 。这些编码中, 0x00-7F 由 ISO 646 中的编码填充, 0x80-9F 仍然用作 C1 控制码,这些是单字节字符;剩余部分则用多字节编码对应语言中的字符。
纯技术上说, 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 。
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 。
EUC-TW ,按台湾地区标准 CNS 11643 支持全部 16 个平面每个平面 94² 的字符,前半部分为 ASCII ,后半部分是变长标准。 0xA1-0xFE 的双字节用于表示第一个平面,而后续则用 0x8E.A?.??.?? 的四字节字符,第二个字节用 0xA1-0xB0 这些从 0xA1 开始的码位指定具体平面序号,然后三四字节指定平面内 94×94 的具体位置。
使用情况
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 编码本身就很少见。
常见字符编码 | |
---|---|
早期编码 | 电报码、 BCD 码 (BCDIC、EBCDIC)、ASCII (ISO 646) |
ISO 8859 | ISO 8859-1 、 ISO 8859-2 、…… |
国标系列 | IBM 代码页 936 / GB 2312 、 微软代码页 936 / GBK 、 微软代码页 54936 / GB 18030 |
Unicode / ISO 10646 | UTF-7 、 UTF-8、 UTF-16 、 UTF-32 |
- ↑ 全称为 Extended Unix Code ,译为扩展 Unix 编码,全称只用于解释这个词语,通常使用中只使用缩写。