计算机应用基础
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.3.2 汉字的编码

1.汉字内码

汉字信息在计算机内部也是以二进制方式存放的。由于汉字数量多,用一个字节的128种状态不能全部表示出来,因此在我国1980年颁布的《信息交换用汉字编码字符集-基本集》(GB 2312—1980)中规定用两个字节的十六位二进制表示一个汉字,每个字节都只使用低7位(与ASCII码相同),即有128×128=16384种状态。由于ASCII码的34个控制代码在汉字系统中也要使用,为不致发生冲突,不能作为汉字编码,128减去34只剩94种,所以汉字编码表的大小是94×94=8836。

每个汉字或图形符号分别用两位的十进制区码(行码)和两位的十进制位码(列码)表示,不足的地方补0,组合起来就是区位码。把区位码按一定的规则转换成的二进制代码叫作信息交换码(简称国标码)。国标码共有汉字6763个(一级汉字,是最常用的汉字,按汉语拼音字母顺序排列,共3755个;二级汉字,属于次常用汉字,按偏旁部首的笔画顺序排列,共3008个),数字、字母、符号等682个,共7445个。

由于国标码不能直接存储在计算机内,为了方便计算机内部处理和存储汉字,又能区别于ASCII码,将国标码中的每个字节的最高位改设为1,这样就形成了在计算机内部进行汉字的存储、运算的编码,即机内码(或汉字内码、内码)。内码既与国标码有简单的对应关系,易于转换,又与ASCII码有明显的区别,且有统一的标准(内码是唯一的)。

2.汉字外码

无论是区位码还是国标码都不利于汉字输入。因此,为方便汉字的输入而制定了汉字编码,称为汉字输入码。汉字输入码属于外码。不同的输入方法,形成了不同的汉字外码。常见的输入法如下。

1)按汉字的排列顺序形成的编码(流水码):如区位码。

2)按汉字的读音形成的编码(音码):如全拼、简拼、双拼等。

3)按汉字的字形形成的编码(形码):如五笔字型、郑码等。

4)按汉字的音、形结合形成的编码(音形码):如自然码、智能ABC。

输入码在计算机中必须转换成机内码,才能进行存储和处理。

3.汉字字形码

为了将汉字在显示器或打印机上输出,把汉字按图形符号设计成点阵图,就得到了相应的点阵代码(字形码)。

全部汉字字码的集合叫作汉字字库。汉字字库可分为软字库和硬字库。软字库以文件的形式存放在硬盘上,现多用这种方式;硬字库则将字库固化在一个单独的存储芯片中,再和其他必要的器件组成接口卡,插接在计算机上,通常称为汉卡。

用于显示的字库叫作显示字库。显示一个汉字一般采用16×16点阵、24×24点阵或48×48点阵。已知汉字点阵的大小,可以计算出存储一个汉字所需要占用的字节空间。例如,用16×16点阵表示一个汉字,就是将每个汉字用16行、每行16个点表示,一个点需要1位二进制代码,16个点需用16位二进制代码(即2个字节),共16行,所以需要16行×2字节/行=32字节,即16×16点阵表示一个汉字,字形码需用32字节。即:字节数=点阵行数×点阵列数/8。

用于打印的字库叫作打印字库,其中的汉字比显示字库多,而且工作时也不同于显示字库需调入内存。

可以这样理解,为在计算机内表示汉字而形成的汉字编码叫作内码(如国标码),内码是唯一的。为方便汉字输入而形成的汉字编码为输入码,属于汉字的外码,输入码因编码方式不同而不同,是多种多样的。为显示和打印输出汉字而形成的汉字编码为字形码,计算机通过汉字内码在字模库中找出汉字的字形码,实现其转换。