#### GB18030 编码规则

GB 18030，国家标准 GB 18030-2005，是中国目前最新的内码字集，于 2000 年 3 月发布的汉字编码国家标准，与 GB 2312-1980 和 GBK 兼容，共收录汉字 70244 个：

- 与 UTF-8 相同，采用多字节编码，每个字可以由 1 个、2 个或 4 个字节组成
- 编码空间庞大，最多可定义 161 万个字符
- 支持中国国内少数民族的文字，不需要动用造字区
- 汉字收录范围包含繁体汉字以及日韩汉字

GB 18030 编码是一二四字节变长编码：

- 单字节，其值从 0 到 0x7F，与 ASCII 码兼容
- 双字节，第一个字节的值从 0x81 到 0xFE，第二个字节的值从 0x40 到 0xFE（不包括 0x7F），与 GBK 标准兼容
- 四字节，第一个字节的值从 0x81 到 0xFE，第二个字节的值从 0x30 到 0x39，第三个字节从 0x81 到 0xFE，第四个字节从 0x30 到 0x39。

字符处理软件在处理文本时，从左往右依次扫描每个字节：

- 如果遇到的字节的最高位是 0，那么就会断定该字符只占用了一个字节
- 如果遇到的字节的最高位是 1，那么该字符可能占用了两个字节，也可能占用了四个字节，不能妄下断论，所以还要继续往后扫描：
  - 如果第二个字节的高位有两个连续的 0，那么就会断定该字符占用了四个字节
  - 如果第二个字节的高位没有连续的 0，那么就会断定该字符占用了两个字节

可见，当字符占用两个或者四个字节时，GB18030 编码要检测两次，处理效率比 GB2312 和 GBK 都低。

#### 0 条用户评论

0 / 300
当前仅支持登录用户评论，去登录
© 2021 - 2025 必搜便捷工具 All rights reserved.
问题反馈 皖ICP备2021019041号 English