扩展 UNIX 代码 (EUC) 编码方案
EUC 编码方案定义了一组可支持 1 到 4 个字符集的编码规则。 这些编码规则基于针对 7 位和 8 位数据编码的 ISO2022 定义。 EUC 编码方案使用控制字符来标识某些字符集。 下表显示了所有 EUC 编码的基本结构。
| EUC | 字符编码 |
|---|---|
| CS0 | 0xxxxxxx |
| CS1 | 1xxxxxxx
1xxxxxxx 1xxxxxxxx 1xxxxxxx 1xxxxxxxx 1xxxxxxx ... |
| CS2 | 10001110 1xxxxxxx
10001110 1xxxxxxx 1xxxxxxxx 10001110 1xxxxxxx 1xxxxxxxx 1xxxxxxxx ... |
| CS3 | 10001111 1xxxxxxx
10001111 1xxxxxxx 1xxxxxxxx 10001111 1xxxxxxx 1xxxxxxxx 1xxxxxxxx ... |
术语 EUC 特指这些通用编码规则。 基于 EUC 的代码集符合 EUC 编码规则,但同时也标识了与特定实例相关的特定字符集。 例如,针对日语的 IBM-eucJP 是指依照 EUC 编码规则的日本工业标准字符编码。
第一集合(CS0)总是含有一个 ISO646 字符集。 所有其他集合必须将“最高有效位”(most significant bit,MSB)设为 1,并且可使用任意数量的字节来编码字符。 此外,一个集合中的所有字符必须具有以下几点:
- 用来编码所有字符的字节数都相同
- 列显示宽度(固定宽度终端上的列数)都相同
第三集合(CS2)中的所有字符前面总是带有控制字符 SS2(单移 2,0x8e)。 符合 EUC 的代码集仅将 SS2 控制字符用于标识第三集合。
第四集合(CS3)中的所有字符前面总是带有控制字符 SS3(单移 3,3x8ef)。 符合 EUC 的代码集仅将 SS3 控制字符用于标识第四集合。