区位码国标码机内码转换问题

区位码国标码机内码转换问题

ID:13937017

大小:38.50 KB

页数:5页

时间:2018-07-25

区位码国标码机内码转换问题_第1页
区位码国标码机内码转换问题_第2页
区位码国标码机内码转换问题_第3页
区位码国标码机内码转换问题_第4页
区位码国标码机内码转换问题_第5页
资源描述:

《区位码国标码机内码转换问题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、国标码并不等于区位码,它是由区位码稍作转换得到,其转换方法为:先将十进制区码和位码转换为十六进制的区码和位码,;这样就得了一个与国标码有一个相对位置差的代码,;再将这个代码的第一个字节和第二个字节分别加上20H,就得到国标码。如:“保”字的国标码为3123H,它是经过下面的转换得到的:1703D->1103H->+20H->3123H。输入码、区位码、国标码与机内码国家标准局1980年颁布的《信息交换用汉字编码字符集"基本集》(代号为GB231280)规定的汉字交换码作为国家标准汉字编码。GB231280中共有7445个字符符号:汉字符号6763个一级汉字3755个(按汉语

2、拼音字母顺序排列)二级汉字3008个(按部首笔划顺序排列)非汉字符号682个GB231280规定,我们知道,键盘是当前微机的主要输入设备,;输入码就是使用英文键盘输入汉字时的编码。目前,我国已推出的输入码有数百种,但用户使用较多的约为十几种,按输入码编码的主要依据,大体可分为顺序码、音码、形码、音形码四类,如“保”字,用全拼,输入码为码为“BAO”,用区位码,输入码为“1703”,用五笔字型则为“WKS”。计算机只识别由0、1组成的代码,ASCII码是英文信息处理的标准编码,汉字信息处理也必须有一个统一的标准编码。汉字交换码(国标码)主要用于汉字信息交换,我国国家标准局于1

3、981年5月颁布了《信息交换用汉字编码字符集——基本集》,代号为GB2312-80,共对6763个汉字和682个图形字符进行了编码,其编码原则为:汉字用两个字节表示,每个字节用七位码(高位为0),;所有的国标码汉字及符号组成一个94行94列的二维代码表中。在此方阵中,每一行称为一个"区",每一列称为一个"位"。这个方阵实际上组成一个有94个区(编号由01到94),每个区有94个位(编号由01到94)的汉字字符集。每两个字节分别用两位十进制编码,前字节的编码称为区码,后字节的编码称为位码,此即区位码,其中,高两位为区号,低两位为位号。这样区位码可以唯一地确定某一汉字或字符;反之

4、,任何一个汉字或符号都对应一个唯一的区位码,没有重码。如“保”字在二维代码表中处于17区第3位,区位码即为“1703”。国标码并不等于区位码,它是由区位码稍作转换得到,其转换方法为:先将十进制区码和位码转换为十六进制的区码和位码,;这样就得了一个与国标码有一个相对位置差的代码,;再将这个代码的第一个字节和第二个字节分别加上20H,就得到国标码。如:“保”字的国标码为3123H,它是经过下面的转换得到的:1703D->1103H->+20H->3123H。国标码是汉字信息交换的标准编码,但因其前后字节的最高位为0,与ASCII码发生冲突,如“保”字,国标码为31H和23H,

5、而西文字符“1”和“#”的SCII也为31H和23H,现假如内存中有两个字节为31H和23H,;这到底是一个汉字,还是两个西文字符“1”;和“#”?于是就出现了二义性,显然,国标码是不可能在计算机内部直接采用的,于是,;汉字的机内码采用变形国标码,其变换方法为:将国标码的每个字节都加上128,即将两个字节的最高位由0改1,其余7位不变,如:由上面我们知道,“保”字的国标码为3123H,前字节为00110001B,后字节为00100011B,高位改1为10110001B和10100011B即为B1A3H,因此,字的机内码就是B1A3H;。显然,汉字机内码的每个字节都大于12

6、8,这就解决了与西文字符的ASCII码冲突的问题。如上所述,汉字输入码、区位码、;国标码与机内码都是汉字的编码形式,它们之间有着千丝万缕的联系,但其间的区别也是不容忽视的汉字的国标码=汉字的区位码十进制转换为十六进制,再加上2020H。汉字的机内码=汉字的国标码(十六进制)+8080H区位码(十进制->十六进制)+2020H=国标码+8080H=机内码还有区位码+A0A0=机内码将十进制区码和位码转换为十六进制的区码和位码这个代码的第一个字节和第二个字节分别加上20H,就得到国标码。如:已知汉字的"大"的区位码是2083,区位码是10进制的,而国标码和机内码是16进制的,首先

7、要把2083转化成16进制。就是把20除16取余得到14如同10进制转化2进制同样把83除16取余最后把得到的数加2020是国标码再加上8080是机内码简单的方法:先将区位码的高位和低位,变成16进制。加2020H就是国标码;再加8080H就是机内码。从区位码到机内码,也就是直接加A0A0H,就可以了。如某汉字的区位码是5448,54化成16进制是36,48化成16进制是30合起来是3630H,加A0A0H,结果是D6D0H,所以其机内码是D6D0。我们知道,键盘是当前微机的主要输入设备,输入码就是使用

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。