下面是关于汉字编码的叙述 Ⅰ.在不同的汉字输入法中,同一个汉字的输入码通常不同 Ⅱ.在GB2312中,汉字的国标交换码为该汉字的区号和位号分别加32之后得到的二进制代码 Ⅲ.在GB2312中,汉字内码的每个字节的最高位是0或1 Ⅳ.

admin2009-02-15  26

问题 下面是关于汉字编码的叙述
   Ⅰ.在不同的汉字输入法中,同一个汉字的输入码通常不同
   Ⅱ.在GB2312中,汉字的国标交换码为该汉字的区号和位号分别加32之后得到的二进制代码
   Ⅲ.在GB2312中,汉字内码的每个字节的最高位是0或1
   Ⅳ.不同字体(宋体、仿宋体、楷体等)的字形描述信息存放在同一个字库中其中,正确的是(10)。

选项 A、Ⅰ和Ⅲ
B、Ⅰ和Ⅱ
C、Ⅱ和Ⅲ
D、Ⅱ和Ⅳ

答案A

解析 GB2312字符集构成一个94行、94列的二维表,行号称为区号,列号称为位号,每一个汉字或符号在码表中的位置用它所在的区号和位号来表示。为了处理与存储的方便,每个汉字的区号和位号在计算机内部分别用一个字节来表示。例如,“学”字的区号为49,位号为07,它的区位码即为4907,用2个字节的二进制数表示为:00110001 00000111
   区位码无法用于汉字通信,因为它可能与通信使用的控制码(00H~1FH)(即0~31)发生冲突。IS02022规定每个汉字的区号和位号必须分别加上32(即二进制数00100000),经过这样的处理而得的代码称为国标交换码,简称交换码,因此,“学”字的国标交换码计算为:01010001 00100111用十六进制数表示即为5127H。
   由于文本中通常混合使用汉字和西文字符,汉字信息如果不予以特别标识,就会与单字节的ASCII码混淆。此问题的解决方法之一是将一个汉字看成是两个扩展ASCII码,使表示GB2312汉字的两个字节的最高位都为1。这种高位为1的双字节汉字编码即为GB2312汉字的机内码,简称为内码。因此,“学”字的机内码为:11010001 10100111用16进制表示即为D1A7H。
   最后要指出的是,汉字的输入编码与汉字的机内码是不同范畴的概念。不管采用什么样的编码输入法(例如拼音、五笔字型等)来输入一个汉字,其输入码通常不同,但其机内码都是相同的。不同字体的字形描述信息是分开存放的。
转载请注明原文地址:https://kaotiyun.com/show/yHjZ777K
0

相关试题推荐
最新回复(0)