中文的几个编码 GB2312、GBK、GB18030、GB13000、BIG5

来源:互联网 发布:网络解锁助手支持机型 编辑:程序博客网 时间:2024/05/19 22:57

GB2312

GB2312(1980年)一共收录了 7445 个字符,包括 6763 个汉字和 682 个其它符号。汉字区的内码范围高字节从 B0-F7,低字节从 A1-FE,占用的码位是72*94=6768。其中有 5 个空位是 D7FA-D7FE。
GB2312 将代码表分为 94 个区,对应第一字节;每个区 94 个位,对应第二字节,两个字节的值分别为区号值和位号值加 32(2OH),因此也称为区位码。01-09 区为符号、数字区,16-87 区为汉字区,10-15 区、88-94 区是有待进一步标准化的空白区。GB2312 将收录的汉字分成两级:第一级是常用汉字计 3755 个,置于 16-55 区,按汉语拼音字母/笔形顺序排列;第二级汉字是次常用汉字计 3008 个,置于 56-87 区,按部首/笔画顺序排列。故而GB2312最多能表示 6763 个汉字。

在 Windows 中的代码页是 CP936。

 

GBK
GB2312 仅收汉字 6763 个,这大大少于现有汉字,随着时间推移及汉字文化的不断延伸推广,有些原来很少用的字,现在变成了常用字,例如:朱镕基的“镕”字,未收入 GB2312-80.
GBK 最初是由微软对 GB2312 的扩展,也就是 CP936 字码表 (Code Page 936)的扩展(原来的 CP936 和 GB2312-80 一模一样),最初出现于 Windows 95 简体中文版中,由于 Windows 产品的流行和在大陆广泛被使用,中华人民共和国国家有关部门将其作为技术规范。注意GBK并非国家正式标准,只是国家技术监督局标准化司、电子工业部科技与质量监督司发布的“技术规范指导性文件”。虽然 GBK 收录了所有 Unicode 1.1 及 GB 13000.1-93 之中的汉字,但是编码方式与 Unicode 1.1 及 GB 13000.1-93 不同。仅仅是 GB 2312 到 GB 13000.1-93 之间的过渡方案。GBK 收录了 21886 个符号,它分为汉字区和图形符号区。汉字区包括 21003 个字符。

GBK 作为对 GB2312 的扩展,在现在的 Windows 系统中仍然使用代码页 CP936 表示,但是同样的 936 的代码页跟一开始的 936 的代码页只支持 GB2312 编码不同,现在的 936 代码页支持 GBK 的编码,GBK 同时也向下兼容GB2312 编码。

GBK 共收入 21886 个汉字和图形符号,包括:

* GB2312 中的全部汉字、非汉字符号。
* BIG5 中的全部汉字。
* 与 ISO 10646 相应的国家标准 GB13000 中的其它 CJK 汉字,以上合计 20902 个汉字。
* 其它汉字、部首、符号,共计 984 个。
GBK 编码区分三部分:
* 汉字区,包括:
GBK/2:OXBOA1-F7FE, 收录 GB2312 汉字 6763 个,按原序排列;
GBK/3:OX8140-AOFE,收录 CJK 汉字 6080 个;
GBK/4:OXAA40-FEAO,收录 CJK 汉字和增补的汉字 8160 个。
* 图形符号区,包括:
GBK/1:OXA1A1-A9FE,除 GB2312 的符号外,还增补了其它符号
GBK/5:OXA840-A9AO,扩除非汉字区。
* 用户自定义区:

即 GBK 区域中的空白区,用户可以自己定义字符。

 

GB18030

2000 年的 GB18030 取代了 GBK1.0 的正式国家标准。该标准收录了 27484 个汉字,同时还收录了藏文、蒙文、维吾尔文等主要的少数民族文字。现在的PC平台必须支持 GB18030 ,对嵌入式产品暂不作要求。所以手机、MP3 一般只支持 GB2312。 

GB18030 在 Windows 中的代码页是 CP54936。
GB18030 是最新的汉字编码字符集国家标准, 向下兼容 GBK 和 GB2312 标准。 GB18030 编码是一二四字节变长编码。一字节部分从 0x0~0x7F 与 ASCII 编码兼容。 二字节部分, 首字节从 0x81~0xFE, 尾字节从 0x40~0x7E 以及 0x80~0xFE, 与 GBK 标准基本兼容。 四字节部分, 第一字节从 0x81~0xFE, 第二字节从 0x30~0x39, 第三和第四字节的范围和前两个字节分别相同。 四字节部分覆盖了从 0x0080 开始, 除去二字节部分已经覆盖的所有 Unicode 3.1 码位。也就是说, GB18030 编码在码位空间上做到了与 Unicode 标准一一对应,这一点与 UTF-8 编码类似。

 

GB13000

GB13000 等同于国际标准的《通用多八位编码字符集 (UCS)》 ISO10646.1,就是等同于 Unicode 的标准,代码页等等的都使用UTF的一套标准。

从 ASCII、GB2312、GBK 到 GB18030,这些编码方法是向下兼容的,即同一个字符在这些方案中总是有相同的编码,后面的标准支持更多的字符。在这些编码中,英文和中文可以统一地处理。区分中文编码的方法是高字节的最高位不为 0。按照程序员的称呼,GB2312、GBK 到 GB18030 都属于双字节字符集 (DBCS)。


BIG5

BIG5 是通行于台湾、香港地区的一个繁体字编码方案。虽然存在一些瑕疵,但广泛应用于电脑行业,尤其是互联网中,从而成为一种事实上的行业标准。
BIG5 码是双字节编码方案,其中第一个字节的值在 OXAO-OXFE 之间,第二个字节在 OX40-OX7E 和 OXA1-OXFE 之间。

BIG5 收录 13461 个汉字和符号,包括:

* 符号 408 个,编码位置 A140-A3BE
* 常用字 5401 个,编码位置 A440-C67E,包括台湾教育部颁布的《常用国字标准字体表》的全部汉字 4808 个,台湾教科书常用字 587 个,异体字 6 个。
* 次常用字 7652 个,编码位置 C940-F9D5,包括台湾教育部颁布的《次常用国字标准字体表》的全部汉字 6341 个,《罕用国字标准字体表》中使用频率较高的字 1311 个。

原创粉丝点击