- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
GBK汉字编码技术研究
GBK汉字编码技术研究
杨善超
福建师范大学数学与信息学院
X
关注成功!
加关注后您将方便地在 我的关注中得到本文献的被引频次变化的通知!
新浪微博
腾讯微博
人人网
开心网
豆瓣网
网易微博
摘????要:
文字编码是现代社会信息传播的基础, 对文化发展非常重要。本文简述了常见的汉字编码方案, 重点分析了GB2312、GBK编码标准的文字编码规则, 并通过C语言、Excel进行GBK文字符号的分类显示。
关键词:
GBK编码; GB2312编码; C语言; Excel;
作者简介:杨善超 (1979-) , 男 (汉族) , 山东东平人, 讲师, 硕士, 主要研究方向为图形图像处理、多媒体信息安全。
基金:福建省教育厅B类项目 (JB08049)
1. 引言
文字的数字化对不同民族、种族的交流有非常重要的意义, 有利于文化传播;文字的数字化离不开文字的编码, 这些编码方式会影响古籍、嵌入式设备上的字符输出显示。文字编码标准、尤其汉字编码标准有很多, 很有研究的必要, 因此本文先对现有汉字编码标准进行介绍, 然后重点对编码标准GB2312-80和GBK进行分析。
2. 常见文字编码技术
文字的数字化是计算机处理文字的基础, 其主要过程是将文字映射为二进制整数, 又称为文字的编码, 而真正写入内存的文字编码称为内码。信息存储的最小单位是位 (b, bit) , 基本单位是字节 (B, Byte) , 1B=8b。内码一般由固定长度的字节组成。目前的文字编码标准主要有ASCII、GB2312、GBK、Unicode等[1], 下面分别对这些编码标准做介绍。ASCII编码是最简单的西文编码方案。GB2312、GBK、GB18030是汉字字符编码方案的国家标准。ISO/IEC 10646和Unicode都是全球字符编码的国际标准。下面对与汉字相关的编码方案做简要的分析。
2.1 ASCII编码
标准ASCII码使用7位二进制来编码常见的西文字符, 对应1个字节的低7位, 最高位为0, 可以表示128个符号, 其中ASCII码小于32的是控制字符。32~126表示可打印字符。扩展ASCII码采用最高位为1的8位二进制来表示。但西方国家对扩展ASCII定义的字符集不统一。
表1 GBK编码标准编码空间 ?? 下载原表
2.2 GB2312-80编码标准
GB2312-80是1980年制定的中国汉字编码国家标准。共收录7445个字符, 其中汉字6763个。GB2312兼容标准ASCII码, 采用扩展ASCII码的编码空间进行编码, 一个汉字占用两个字节, 每个字节的最高位为1。具体办法是:收集了7445个字符组成94*94的方阵, 每一行称为一个“区”, 每一列称为一个“位”, 区号位号的范围均为01-94, 区号和位号组成的代码称为“区位码”。区位输入法就是通过输入区位码实现汉字输入的。将区号和位号分别加上20H, 得到的4位十六进制整数称为国标码, 编码范围为0x2121~0x7E7E。为了兼容标准ASCII码, 给国标码的每个字节加80H, 形成的编码称为机内码, 简称内码, 是汉字在机器中实际的存储代码, GB2312-80标准的内码范围是0x A1A1~0x FEFE。
2.3. GBK编码标准
《汉字内码扩展规范》 (GBK) 于1995年制定, 兼容GB2312、GB13000-1、BIG5编码中的所有汉字, 使用双字节编码, 编码空间为0x8140~0x FEFE, 共有23940个码位, 如表1所示[3][4], 其中GBK1区和GBK2区也是GB2312的编码范围。收录了21003个汉字。
3. 字符的输入
3.1 基于C语言进行字符的输入和显示
WINDOWS操作系统的中文版, 默认采用“ANSI/OEM╞简体中文GBK”进行文字编码。打印GBK字符集, 需要将GBK编码按照2个字节一组写入文件, 用记事本打开文件时会按照默认的字体显示对应编码的字符。
3.2 基于Excel的字符输入和显示
Excel表格可以比较直观的显示GBK编码字符集。在打开的Excel文件中按ALT+F11键, 进入VBA代码模式编写如下过程, 运行过程可在Excel看到GBK的字符集。
4. 结束语
本文对GBK和GB2312编码方案进行了分析, 采用C语言和Excel对内码对应的字符进行显示, 是进行文字信息处理的重要基础, 可以在此基础上做进一步的汉字信息处理。
参考文献
[1]多媒体技术基础[M], 林福宗, 北京:清华大学出版社, 2017:27-42
[2]Unicode10.0 Character Code Charts./charts/, 2017
[3]Unicode、GB2312、GBK和
文档评论(0)