欢迎来到天天文库
浏览记录
ID:52093196
大小:1010.00 KB
页数:50页
时间:2020-03-31
《《汉字的显示与放大》PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、2021/7/221第十四章汉字的显示与放大汉字的编码用作图方式显示和放大汉字直接写VRAM显示汉字2021/7/222第一节、汉字的编码汉字的主要编码区位码国标码机内码字形码地址码2021/7/223汉字数目众多(康熙字典收录47000多个),但最常用的高频字仅约100个,常用字约3000个,次常用字约4000个,罕见字约8000个,其余都是死字。1981年,我国公布了《通讯用汉字字符集(基本集)及其交换码标准》GB2312-80方案,把高频字、常用字、次常用字汇集起来组成了汉字基本字符集(共6763个汉字)
2、。概述2021/7/224上述基本字符集由三部分组成:一级汉字(使用频度较高的3755个汉字,按拼音排序)二级汉字(使用频度略低的3008个汉字,按部首排序)西文字符、数字、图形符号(700多个非汉字字符)为管理方便,将上述所有字符排列在了一个94*94的表格中一、汉字的区位码2021/7/225一、汉字的区位码0102031617185657010203040506070809101112131415…94……94………2021/7/226表中每一行为一个区,每一列为一个位。汉字(字符)在表中的区号和位号构成
3、了汉字的区位码。例如:“啊”在16区01位,故“啊”的区位码是1601“大”在20区83位,故“大”的区位码是2083说明:区位码常以十六进制表示,如:1453H一、汉字的区位码2021/7/227二、汉字的国标码计算机要处理汉字,必须给每个汉字一个唯一的编码,这些编码是国家机构按统一标准编排的,故称国标码。英文字符是用一个字节编码的,即ASCII码,而汉字数量众多,需要用两个字节才足以完成编码,所以汉字(含前15区的符号)的国标码是两个字节。2021/7/228二、汉字的国标码国标码的两个字节是这样来的:将汉
4、字(含前15区的符号)的区号和位号分别加上32并各用一个字节表示出来。例如:“啊”的区号是16,位号是1,其国标码是:0011000000100001“大”的区号是20,位号是83,其国标码是:00110100011100112021/7/229二、汉字的国标码提示:汉字区号、位号最大是9494+32=126,不超过127如:设94区94位有汉字,其国标码应为:0111111001111110结论:国标码的两个字节的最高位都是02021/7/2210三、汉字的机内码每个汉字都有唯一一个国标码,按说可以用计算机处
5、理汉字了,但不幸的是,计算机不仅要处理汉字,还要处理英文字符,而汉字国标码和英文编码是存在冲突的。例如:“大”的国标码是:0011010001110011,如果把国标码的这两个字节直接存储到计算机中,则系统很可能把它们当做两个英文字符(字符‘4’和字符‘i’),因此计算机内部不能存储国标码。2021/7/2211三、汉字的机内码为避免和英文的ASCII码混淆,存储汉字前,总是先把国标码两个字节的最高位都改为1然后再存储,这样就由国标码变成了机内码(计算机内部实际存储的汉字编码)。如:“大”的国标码是:00110
6、10001110011机内码是:10110100111100112021/7/2212三、汉字的机内码注意:存储机内码时,总是把区号对应的字节存储在低字节,而把位号对应的字节存储在高字节。如:“大”的机内码是:1011010011110011对应区号对应位号1011010011110011低字节高字节2021/7/2213三、汉字的机内码机内码和区位码的转换关系:区号=机内码的低位字节–160位号=机内码的高位字节–160解释说明:机内码是在国标码的基础上将两字节最高位都变为1而得来,相当于两个字节各加了128
7、而国标码是由区位码各加32而来2021/7/2214四、汉字的字形码汉字的形状各不相同。为在计算机中显示汉字,通常都是先把每个汉字的形状记录下来,形成字形码例如:16点阵宋体字库中“大”字的字形码是这样来的:2021/7/2215四、汉字的字形码画一个16*16的表格,在上面写一个宋体“大”。接下来,从左上角的小方格开始记录“大”字的形状,若小方格被“大”字覆盖,则记为1,否则记为0。0000001100000000000000110000000000000011000000000000001100000100
8、11111111111111100000001100000000…………………………110000000000010016点阵宋体“大”字的字形码(32字节)2021/7/2216四、汉字的字形码将所有汉字(符号)的16点阵宋体字形码按顺序汇集到一起就是16点阵宋体字库字库中存有区位表中所有汉字(符号)的字形码。当需要显示某汉字(符号)时,先从字库中调出该汉字的字形码,再在屏幕上显示出来
此文档下载收益归作者所有