转载须注明出处:简书@Orca_J35
Unicode 字符编码模型分为四个层级(level),概况如下:
-
ACR: Abstract Character Repertoire 抽象字符库
要编码(encoded)的字符集,比如:某些字母或符号集
-
CCS: Coded Character Set 已编码字符集
从抽象字符库到到一组非负整数的映射
-
CEF: Character Encoding Form 字符编码模式
从一组非负整数到一组特定代码单元序列的映射,其中的非负整数应是 CCS 中元素,代码单元也应拥有指定宽度,如 32-bit 整数。
-
CES: Character Encoding Scheme 字符编码方案
从代码单元序列到 8-bits 字节序列的可逆转换。如果允许的话,会包含字节顺序标记(byte order mark - BOM)。
将编码模型分为四个层级的目的是:创建一组可以通过各种编码模式编码的通用字符集。也就是说,同一字符集可以对应多种编码方式。
除了以上四个层级外,另外还有两个有用的概念:
-
CM: Character Map 字符映射
这一概念将上述四个层级打包到一个操作中,包含从"抽象字符库成员序列"到字节序列的全部过程。
-
TES: Transfer Encoding Syntax 传输编码语法
应用于文本和其它编码数据的可逆转换,数据需要经过转换后才允许被传输,例如 Base64 和 uuencode。