GB 18030
GB18030 | |
---|---|
术语名称 | GB18030 |
英语名称 | GB18030 |
别名 | GB18030-2000, GB18030-2005, GB18030-2022 |
GB 18030[1] 是中国国家标准化管理委员会及工业和信息化部颁布的国家标准,是官方字符集与字符编码之一,到 2025 年为止,前后共有三个不同版本。 2000 年由国家标准委颁布时,标准名为《信息技术 信息交换用汉字编码字符集 基本集的扩充》[2],标准号为 GB 18030-2000 ; 2005 年发布第一次修订,名为 《信息技术 中文编码字符集》[3],标准号为 GB 18030-2005 ; 2022 年由工业和信息化部发布第二次修订,名为《信息技术 中文编码字符集》[4][5],标准号为 GB 18030-2022 ,作为强制标准。尽管有时也用带有年份的标准号称呼,但一般都直接统称 GB 18030 ; 2024 年发布了 GB 18030-2022 的《第 1 号修改单》。截至 2025 年,是相关领域的强制标准。
GB 18030 和较新的 Unicode 对齐,与前版相比除追加了大量较生僻的正常汉字外,也补充引入了大量类推简化字,以及不少几乎不会在非专业领域文本中出现的异体字、古文字、二简字、隶定字及各种原因已经进入 Unicode 的幽灵汉字。引入了“实现的级别”概念,规定不同等级的场景下应该提供实现的文字范围。
由于 UTF-8 和 GBK 此前已经得到广泛应用,且后者尽管被 GB 18030 兼容,却实际被不同系统或字体或输入法在私用区加入大量特殊字符,转入 GB 18030 会产生兼容成本,且过于大而全,对企业而言有较高支持成本。由于企业操作基本看用户体验,用户并不会在意使用字符集的合规性,在已有的通常够用的字符集上切换新的只会引起用户体验下降,因此 GB 18030 实际并没有足够的强制力。
GB 18030 是一种变长的字符集和字符编码,其不区分码位与编码,也就是字符编码和码位相同,不区分同一字符集的多种编码方式。
字符集特征
收录了 GB/T 2312-1980 的全部字符,及 GB/T 13000 (即 Unicode)中 CJK 统一汉字及 CJK 统一汉字扩充 A 、 CJK 统一汉字扩充 B 、 CJK 统一汉字扩充 C 、 CJK 统一汉字扩充 D 、 CJK 统一汉字扩充 E 、 CJK 统一汉字扩充 F 的内容,以及少数民族文字字符。(节选自 GB 18030-2022 第 4 章。)
码位特征
数据采集自 GB 18030-2022 第 5~7 章。
GB 18030 中字符分为单字节、双字节、四字节三部分编码。
- 单字节为 GB 11383 。
- 双字节为第一字节 0x81-FE 第二字节 0x40-7E 和 0x80-FE 的范围,与 GBK 的范围相当。
- 四字节整体范围为四字节依次取 0x81-FE 0x30-39 0x81-FE 0x30-39 的范围,也就是在双字节基础上使用了在数字位置的第二字节,将连续两个这样的双字节叠在一起作为四字节进行编码(推测可能是避免符号区有其他使用导致冲突,使用的是第二字节是 ASCII 数字的部分)。目前根据最高字节的差异,已使用部分可以分为两个范围:
- 四字节依次取 0x81-84 0x30-39 0x81-FE 0x30-39 ,对应 Unicode 基本多文种平面(BMP)。
- 四字节依次取 0x90-E3 0x30-39 0x81-FE 0x30-39 ,对应 Unicode 辅助平面。
常见编码
GB 18030
GB 18030 的内码本身就是这一字符集最常见的字符编码,也用这一名称。
代码页 54936
见词条 微软代码页 54936 。
使用
GB 18030 是目前的编码标准,与 GB 系一同在中国大陆随着 Windows 系统被广泛使用,几乎全部汉字处理、通信等该场景都能看到这一字符编码。但是由于 Windows 系统底层仅能支持 SBCS 和 DBCS 类型的编码,对于达到 4 字节的变长文字可以允许展示但无法纳入底层支持,在大多数场景下仍然仅支持到微软代码页 936 。也就是说目前 GB 18030 更新, GBK 更兼容,两者是并列广泛使用的。
GB 18030 目前已经作为 GBK 的继任者得到基本支持,多数情况下支持到实现级别 1 ,也就是 CJK 统一汉字区与 CJK 统一汉字扩充 A ,但是标准确实有些生不逢时。随着 Unicode 流行,在网页等潜在面向国际的场景逐渐扩大, GB 系本来使用就在不断减少中,并没有哪个专门的 GB 系优于 Unicode 系的场景出现。
常见字符编码 | |
---|---|
早期编码 | 电报码、 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 |
- ↑ 读作“国标幺八零三零”。
- ↑ https://std.samr.gov.cn/gb/search/gbDetailed?id=71F772D79585D3A7E05397BE0A0AB82A
- ↑ https://std.samr.gov.cn/gb/search/gbDetailed?id=71F772D800B5D3A7E05397BE0A0AB82A
- ↑ https://std.samr.gov.cn/gb/search/gbDetailed?id=71F772D79585D3A7E05397BE0A0AB82A
- ↑ https://openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=A1931A578FE14957104988029B0833D3