在国标GD2312—80中规定,所有的国标汉字及符号分配在一个94行、94列的方阵中,方阵的每一行称为一个“区”,编号为01区到94区,每一列称为一个“位”,编号为01位到94位,方阵中的每一个汉字和符号所在的区号和位号组合在一起形成的四个阿拉伯数字就是它们的“区位码”。区位码的前两位是它的区号,后两位是它的位号。用区位码就可以唯一地确定一个汉字或符号,反过来说,任何一个汉字或符号也都对应着一个唯一的区位码。汉字“母”字的区位码是3624,表明它在方阵的36区24位,问号“?”的区位码为0331,则它在03区3l位。
汉字的机内码是指在计算机中表示一个汉字的编码。机内码与区位码稍有区别。如上所述,汉字区位码的区码和位码的取值均在1~94之间,如直接用区位码作为机内码,就会与基本ASCII码混淆。为了避免机内码与基本ASCII码的冲突,需要避开基本ASCII码中的控制码(00H~1FH),还需与基本ASCII码中的字符相区别。为了实现这两点,可以先在区码和位码分别加上20H,在此基础上再加80H(此处“H”表示前两位数字为十六进制数)。经过这些处理,用机内码表示一个汉字需要占两个字节,分别 称为高位字节和低位字节,这两位字节的机内码按如下规则表示:
高位字节 = 区码 + 20H + 80H(或区码 + A0H)
低位字节 = 位码 + 20H + 80H(或位码 + AOH)
由于汉字的区码与位码的取值范围的十六进制数均为01H~5EH(即十进制的01~94),所以汉字的高位字节与低位字节的取值范围则为A1H~FEH(即十进制的161~254)。
例如,汉字“啊”的区位码为1601,区码和位码分别用十六进制表示即为1001H,它的机内码的高位字节为B0H,低位字节为A1H,机内码就是B0A1H。
在汉字的点阵字库中,每个字节的每个位都代表一个汉字的一个点,每个汉字都是由一个矩形的点阵组成,0代表没有,1代表有点,将0和1分别用不同颜色画出,就形成了一个汉字,常用的点阵矩阵有12*12, 14*14, 16*16三种字库。
字库根据字节所表示点的不同有分为横向矩阵和纵向矩阵,目前多数的字库都是横向矩阵的存储方式(用得最多的应该是早期UCDOS字库),纵向矩阵一般是因为有某些液晶是采用纵向扫描显示法,为了提高显示速度,于是便把字库矩阵做成纵向,省得在显示时还要做矩阵转换。我们接下去所描述的都是指横向矩阵字库。
对于16*16的矩阵来说,它所需要的位数共是16*16=256个位,每个字节为8位,因此,每个汉字都需要用256/8=32个字节来表示。
即每两个字节代表一行的16个点,共需要16行,显示汉字时,只需一次性读取32个字节,并将每两个字节为一行打印出来,即可形成一个汉字。
点阵结构如下图所示:
|
第一字节
|
第二字节
|
|
0
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
0
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
分享到:
相关推荐
汉字点阵字库原理,介绍区域码、机内码、汉子显示原理等等,百度文库上也有,不过这里面多个例子。
描述汉字编码的原理,解释什么是区位码和机内码,怎样通过区位码和机内码找到唯一对应的汉字,同时文档也描述点阵字库结构,并配有一个点阵汉字使用程序供参考
点阵字库的生产原理 所有的汉字或者英文都是下面的原理,由左至右,每8个点占用一个字节,最后不足8个字节的占用一个字节,而且从最高位向最低位排列。 生成的字库说明:(以12×12例子) 一个汉字占用字节数:...
在国标GB2312—80中规定,所有的国标汉字及符号分配在一个94行、94列的方阵中,方阵的每一行称为一个“区”,编号为01区到94区,每一列称为一个“位”,编号为01位到94位,方阵中的每一个汉字和符号所在的区号和位号...
发现网上的很多制作汉字点阵的工具经常会被某些杀毒软件报木马病毒,挺吓人的,于是使用自己熟悉的windows编程工具,利用字摸提取原理做了一个点阵数组生成的小工具,可以将windows系统的各种字体转化为常用的24*24...
点阵字库的生产原理 所有的汉字或者英文都是下面的原理,由左至右,每8个点占用一个字节,最后不足8个字节的占用一个字节,而且从最高位向最低位排列。 生成的字库说明:(以12×12例子) 一个汉字占用...
点阵字库的生产原理 所有的汉字或者英文都是下面的原理,由左至右,每8个点占用一个字节,不足8个字节的占用一个字节,而且从位向位排列。 生成的字库说明:(以12×12例子) 一个汉字占用字节数:12÷8=...
点阵LED显示原理及点阵汉字库的编码和从标准字库中提取汉字编码的方法.doc
实验内容:现有如下 ROM 组件,4片4K*32位 ROM ,7片 16K*32位 ROM,请在 Logisim 平台构建 GB2312 汉字编码的16K*16点阵汉字字库,电路输入为汉字区号和位号,电路输出为8×32位(16K*16=256 位点阵信息),待完成...
原本想附带送一个注册版的点阵字库软件,奈何分数太少。其实有字库也是一样的。 资源中附带了所用的点阵显示的原理图。总的来说,代码不够优美,是比较原始的显示和移动方法,有一定的参考价值。
里面包含说明,字库原理,如何使用,带.bin文件字库。包里还有取模软件
为了摆脱英文显示的限制,人们通过查询内码从标准字库中得到所需汉字的点阵值,进而实现汉化菜单,使设备的使用更加直观、方便。于是,汉化显示也成为许多国产设备在与进口设备竞争中的主要优势之一。后来,人们又...
点阵字库生成器 V3.5 使用说明
以UCDOS中文宋体字库为例,每一个字由16行16列的点阵组成显示。即国标汉字库中的每一个字均由256点阵来表示。 我们可以把每一个点理解为一个像素,而把每一个字的字形理解为一幅图像。事实上这个汉字屏不仅可以...
绝对超值,搜索搜索网友对该开发板的评价就知道。...Ex008-TFT浏览中文点阵字库(2009-01-04).rar Ex009-TFT示波器(2010-03-20).rar Ex010-Web服务器_uIP(2010-01-20).rar Ex011-TCP通信_uIP(2010-02-01).rar …… ……
鉴于此,文章以基于ST7920控制器的128×64中文字库点阵屏为例,进行了开发应用研究分析,以便初学者进行参考学习。 1 图形点阵显示控制原理 图1为12864液晶屏图形点阵显示原理的示意图。由图可见,液晶屏在x方向有...
// 汉字字模提取的基本原理 // 如同画点画线一样 ,汉字是经过电脑画出来的。这样,就必须 // 为每一个字准备一个数组 , 这就是“ 字模 ” 。字模分为点阵和矢量 // 两种 ,我们常用的是点阵字模 ,一般...