一 计算机科学基础 1.2 非数值数据的表示

数值文字英文字母等都是字符,任何字符进入计算机时,都必须转换为二进制的形式,称为字符编码。


数字字符编码:三种常见编码为BCD编码(有权码),余3码(无权码),格雷码(无权码)。
BCD编码:用4位二进制数进行表示,0=0000,1=0001,... 9=1001.
余3BCD编码: 在BCD的编码基础上,把每个数的代码加上0011后构成。
格雷码: 规则为相邻的两个代码之间只有一位不同。

 

英文字符编码ASCII码 美国标准信息交换码,采用7位二进制数表示,低四位为行,高三位为列。
以前经常在书本上背 a = 97, A = 65,现在终于明白为什么了,在7位ASCII代码表里,a的位置是1100001
换成10进制就是64+32+1=97,A=1000001=65。

 

文字字符编码:文字处理的过程较为复杂,分别需要分解为输入汉字的存储输出等环节,且每个环节用的编码也不相同,且关键点在于要进行一系列的编码转换,输入环节所对应的是输入码,存储环节对应的是内部码,输出环节对应的是字形码

输入码1.数字编码 2.拼音码 3.字型码
数字编码:
对应于国标区位码6763个两级汉字所对应的编码,区位码分94个区,每个区94位。前两位是区位,后两位是字位,特点是无重码,和内码转换方便,前位后位都是10进制数字表示,但难以记忆。

拼音码:通过汉语拼音进行的编码,重码率高,影响速度。

字型码:通过偏旁部首进行的编码,比较典型的是五笔字形,表形码等

内部码:计算机内部处理,存储,传输汉字用的编码。汉字国标码采用4位16进制表示,由于会引起于个别字符内码于ASCII码冲突,所以将两个字节高位为1,用来作为机内码使用。国标码“3473H”等于机内码“B4F3”。

计算机只识别由0、1组成的代码,ASCII码是英文信息处理的标准编码,汉字信息处理也必须有一个统一的标准编码。 汉字交换码(国标码)主要用于汉字信息交换,我国国家标准局于1981年5月颁布了《信息交换用汉字编码字符集——基本集》,代号为GB2312-80,共对6763个汉字和682个图形字符进行了编码,其编码原则为:汉字用两个字节表示,每个字节用七位码(高位为0),;所有的国标码汉字及符号组成一个94行94列的二维代码表中。在此方阵中,每一行称为一个"区",每一列称为一个"位"。这个方阵实际上组成一个有94个区(编号由01到94),每个区有94个位(编号由01到94)的汉字字符集。每两个字节分别用两位十进制编码,前字节的编码称为区码,后字节的编码称为位码,此即区位码,其中,高两位为区号,低两位为位号。这样区位码可以唯一地确定某一汉字或字符;反之,任何一个汉字或符号都对应一个唯一的区位码,没有重码。如“保”字在二维代码表中处于17区第3位,区位码即为“1703 ”。  国标码并不等于区位码,它是由区位码稍作转换得到,其转换方法为:先将十进制区码和位码转换为十六进制的区码和位码,;这样就得了一个与国标码有一个相对位置差的代码,;再将这个代码的第一个字节和第二个字节分别加上20H,就得到国标码。如:“保”字的国标码为3123H,它是经过下面的转换得到的:1703D->1103H->+20H->3123H。国标码是汉字信息交换的标准编码,但因其前后字节的最高位为0,与ASCII码发生冲突,如“保”字,国标码为31H和23H,而西文字符“1”和“#”的SCII也为31H和23H,现假如内存中有两个字节为31H和23H,;这到底是一个汉字,还是两个西文字符“1”;和“#”?于是就出现了二义性,显然,国标码是不可能在计算机内部直接采用的,于是,;汉字的机内码采用变形国标码,其变换方法为:将国标码的每个字节都加上128,即将两个字节的最高位由0改1,其余7位不变,如:由上面我们知道,“保”字的国标码为3123H,前字节为00110001B,后字节为00100011B,高位改1为10110001B和10100011B 即为B1A3H,因此,该字的机内码就是B1A3H。

显然,汉字机内码的每个字节都大于128,这就解决了与西文字符的ASCII码冲突的问题。如上所述,汉字输入码、区位码、;国标码与机内码都是汉字的编码形式,它们之间有着千丝万缕的联系,但其间的区别也是不容忽视的。

字形码:字形码是通过点阵及矢量函数表示的。当需要输入汉字时,利用汉字字形检索程序根据汉字的内码从字模库中找到相应的字形码。

待续。。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值