汉字编码字符集 GB2312 GBK GB18030 | 您所在的位置:网站首页 › 汉字是字节还是字符 › 汉字编码字符集 GB2312 GBK GB18030 |
本文共 2444 字,大约阅读时间需要 8 分钟。 GB 2312 简介 GB_2312 字符集包含了 6763个的 简体汉字,和682 个标准中文符号。
在这个标准中,每个汉字用2个字节来表示,每个字节的ascii码为 161-254 (16 进制A1 - FE),第一个字节 对应于 区码的1-94 区,第二个字节 对应于位码的1-94 位。 161-254 其实很好记忆,大家知道英文字符中,可打印的字符范围为33-126。将 这对 数加上 128(或者说最高位置1),就得到汉字使用的字符的范围。分区表示 GB 2312中对所收汉字进行了“分区”处理,每区含有94个汉字/符号。这种表示方式也称为区位码。 01-09区为特殊符号。 16-55区为一级汉字,按拼音排序。 56-87区为二级汉字,按部首/笔画排序。 10-15区及88-94区则未有编码。 举例来说,“啊”字是GB2312之中的第一个汉字,它的区位码就是1601。 字节结构 在使用GB2312的程序中,通常采用EUC储存方法,以便兼容于ASCII。浏览器编码表上的“GB2312”,通常都是指“EUC-CN”表示法。 每个汉字及符号以两个字节来表示。第一个字节称为“高位字节”(也称“区字节)”,第二个字节称为“低位字节”(也称“位字节”)。 “高位字节”使用了0xA1-0xF7(把01-87区的区号加上0xA0),“低位字节”使用了0xA1-0xFE(把01-94加上 0xA0)。 由于一级汉字从16区起始,汉字区的“高位字节”的范围是0xB0-0xF7,“低位字节”的范围是0xA1-0xFE,占用的码位是 72*94=6768。其中有5个空位是D7FA-D7FE。 例如“啊”字在大多数程序中,会以两个字节,0xB0(第一个字节) 0xA1(第二个字节)储存。区位码=区字节+位字节(与区位码对比:0xB0=0xA0+16,0xA1=0xA0+1)。
GBK 简介 GBK是对GB2312-80的扩展,GBK向下完全兼容GB2312-80编码。 编码方式
GB 1803 简介
字节结构 单字节,其值从0到0x7F。 双字节,第一个字节的值从0x81到0xFE,第二个字节的值从0x40到0xFE(不包括0x7F)。 四字节,第一个字节的值从0x81到0xFE,第二个字节的值从0x30到0x39,第三个字节从0x81到0xFE,第四个字节从0x30到0x39。GB18030的规范是汉字第一个字节在0x81-0xFE之间,第二个字节位于区间0x40-0x7E以及0x80-0xFE。每个字节转化为整数大于128。 ================================================================================================ 总体结构 标准采用单字节、双字节和四字节三种方式对字符编码。单字节部分采用GB/T 11383的编码结构与规则,使用0×00至0×7F码位(对应于ASCII码的相应码位)。双字节部分,首字节码位从0×81至0×FE,尾字节码位分别是0×40至0×7E和0×80至0×FE。四字节部分采用GB/T 11383未采用的0×30到0×39作为对双字节编码扩充的后缀,这样扩充的四字节编码,其范围为0×81308130到0×FE39FE39。其中第一、三个字节编码码位均为0×81至0×FE,第二、四个字节编码码位均为0×30至0×39。 GB18030-2000汉字 如下表所示,GB18030-2000收录了27533个汉字: 类别 码位范围 码位数 字符数 字符类型 双字节部分 第一字节 0xB0-0xF7 第二字节 0xA1-0xFE 6768 6763 汉字 第一字节0x81-0xA0 第二字节0x40-0xFE 6080 6080 汉字 第一字节0xAA-0xFE 第二字节0x40-0xA0 8160 8160 汉字 四字节部分 第一字节0x81-0x82 第二字节0x30-0x39 第三字节0x81-0xFE 第四字节0x30-0x39 6530 6530 CJK统一汉字扩充A 27533就是6763+6080+8160+6530。 双字节部分的6763+6080+8160=21003个汉字就是GBK的21003个汉字。 在Unicode中,CJK统一汉字扩充A有6582个汉字,为什么这里只有6530个汉字? 这是因为在GBK时代,双字节部分已经收录过CJK统一汉字扩充A的52个汉字,所以还余6530个汉字。 GB18030-2005汉字 如下表所示,GB18030-2005收录了70244个汉字: 类别 码位范围 码位数 字符数 字符类型 双字节部分 第一字节 0xB0-0xF7 第二字节 0xA1-0xFE 6768 6763 汉字 第一字节0x81-0xA0 第二字节0x40-0xFE 6080 6080 汉字 第一字节0xAA-0xFE 第二字节0x40-0xA0 8160 8160 汉字 四字节部分 第一字节0x81-0x82 第二字节0x30-0x39 第三字节0x81-0xFE 第四字节0x30-0x39 6530 6530 CJK统一汉字扩充A 第一字节0x95-0x98 第二字节0x30-0x39 第三字节0x81-0xFE 第四字节0x30-0x39 42711 42711 CJK统一汉字扩充B 70244就是6763+6080+8160+6530+42711。参考: 国家标准代码:http://zh.wikipedia.org/wiki/国家标准代码 GBK:http://zh.wikipedia.org/wiki/GBK GB 18030:http://zh.wikipedia.org/wiki/GB18030 转载地址:https://www.cnblogs.com/Dyx5/p/3661511.html 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解! |
CopyRight 2018-2019 实验室设备网 版权所有 |