数字化信息编码是把少量二进制符号(代码)根据一定规则组合起来,以表示大量复杂多样的信息的一种编码。一般来说,根据描述信息的不同可分为数字编码、字符编码、汉字编码等。
1.数字编码
数字编码是二进制数码按照某种规律来描述十进制数的一种编码。最简单最常用的是8421码,或称BCD码(Binary-Code-Decimal)。它利用四位二进制代码进行编码,这四位二进制代码,从高位至低位的位权分别为23、22、21、20,即8、4、2、1,并用来表示一位十进制数。下面列出十进制数符与8421码的对应关系。
如(52)2=(01010010)BCD
(1001 0100 1000 0101)BCD=(9485)10
2.字符编码
人们通常接触和处理的信息中,相当一部分是用字符或字符组合来表示的,如字母、数字以及其他一些可打印显示的字符。同时,计算机和外部设备之间进行通信联系时,还需要一些控制符,如空格符(SP)、回车符(CR)等。通常把这些控制符看作特殊的字符。由于控制符不能直接书写或显示,一般用英文缩写或公认的记号表示。
在计算机内部,上述字符必须用一种二进制代码来表示。目前,在微机系统中,广泛采用的是美国标准信息交换代码(American Standard Code for Information Interchange),简称ASCII码。
ASCII码是用1个字节表示。取1个字节中的7位二进制编码(0000000B-1111111B),它可以表示128个字符,参见表1-4。
表1-4 ASCII码
ASCII码表低四位用作行编码,高三位用作列编码,128个字符中,包括十进制数符0~9、大小写英文字母及专用符号等95种可打印字符,还有33种通用控制字符(如回车、换行等)。如A的ASCII码为1000001。ASCII码中,每一个编码转换为十进制数的值被称为该字符的ASCII码值。
3.汉字编码(www.daowen.com)
汉字是象形文字,用计算机对汉字信息处理要比西文复杂得多,必须解决汉字的输入(输入码)、输出(字形码)和计算机内部的编码(机内码)问题。汉字数量多,因此一个汉字要用2个字节表示,可以编码的字符数16 348个,但为了与标准ASCII码兼容,每个字节中都不能再用32个控制功能码和码值为32的空格以及127的操作码。所以每个字节只能有94个编码。这样,双七位实际能够表示的字数是:94×94=8836个。
(1)输入码:汉字输入码应具有单一性、方便性和可靠性。目前,有多种汉字输入编码,主要类型有:①数字编码,是用一定位数的数字作为汉字的输入编码,如区位码、电报码等;②字音编码,是依据汉字读音的一种编码,最常用的就是拼音码;③字形编码,是根据汉字字形的一种编码,如五笔字型码、表形码等;④音形编码,是根据汉字的字音和字形相结合的特征进行编码。
(2)字形码:为了显示或打印出汉字,必须提供汉字的字形码。一般可用点阵或矢量形式表示。系统提供的所有汉字字形码的集合组成了系统的汉字字形库,简称汉字库。
(3)机内码:即汉字内码,是在计算机内对汉字进行传输、存储和处理的代码。我国1981年公布了国家标准《信息交换用汉字编码字符集基本集》(GB 2312-80),这是计算机汉字处理标准的基础。该集收录了6763个汉字和682个其他字符,用一个94×94的矩阵(94个区,每个区有94个位)来放置字符,每个字符有一个确定的区号和位号。这个编码叫区位码。
转换为汉字内码时,首先为了避开ASCII 32个控制符,先将区位码由十进制转换为十六进制,再在两个字节上分别加上20H,即国标码=区位码+20H;其次,计算机内部表示汉字时,两个字节的最高位都置1,以便和ASCII区别,所以国标码两个字节上分别加上80H。因此一个汉字的内码=区位码+20H+80H。
例如:
区号为50,位号为67
将区位码5067分别转换为十六进制表示为3243H
3243H+2020H=5263H,得到国标码5263H
5263H+8080H=B4F3H,得到机内码为D2E3H
注意:同一个汉字在不同汉字输入方法下,其输入码一般是不相同的,但是在计算机中都转换为相同的内码。
除了上面提到国标内码外,还有很多其他形式的机内码,如我国台湾地区广泛使用的汉字内码是“大五码”(BIG-5),这种内码完全不同于GB内码。不同的汉字内码不能直接交流,必须经过专门的内码转换软件转换才行。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。