机内码与国标码的关系

机内码与国标码的关系
机内码与国标码的关系

西文字符由于数量较少(通常不超过128个),所以采用1个字节(8位)就能完成对所有的西文字符的编码,ASCⅡ码规定西文字符的编码只使用字节的低7位(从第1位到第7位),最高位设为0。所以ASCⅡ码的编码范围是十进制数0~127(写成十六进制即00H~7FH)。

汉字的个数远比西文字符多,国家标准规定的最常用和较常用的汉字便近8000个。显然,如果象西文字符那样采用1个字节对汉字编码就不够了。所以国家标准规定,每个汉字的编码都采用2个字节表示。汉字国标码的一个特点是,尽可能与西文字符的ASCⅡ码相一致。所以汉字国标码的每个字节都只采用其最低7位(从第1位到第7位)。最高位仍然取0。

汉字国标码的取值范围是十进制数33~126(写成十六进制即21H~7EH)。

举例来说,“天”字国标码的两个字节分别是76、108(十进制),写成十六进制是4CH,6CH,写成二进制便是01001100B,01101100B:“天”的国标码:

0100110001101100

第2字节第1字节

汉字国标码作为一种国家标准,是所有汉字编码都必须遵循的一个共同标准,但由于国标码每个字节的最高位都是0,这正好与ASCⅡ码相冲突。例如“天”字的国标码是76、108,而西文字符“L”和“l”的ASCⅡ码也恰好是76和108,现在假如内存中有两个字节76、108,这到底是一个汉字“天”呢,还是两个西文字符“L”和“l”?都有可能,这就出现了二义性。显然国标码在计算机内部是不可能直接使用的,必须对其进行某种变换后才可以使用。其变换方法便是将国标码双字节的每个字节都加上128,相当于将国标码每个字节的最高位即第8位都由0变成1,其余7位不变。这种经过变换的国标码就是汉字的机内码。显然汉字机内码的每个字节都大于128,这就与西文字符的ASCⅡ码区分开了(ASCⅡ码都小于128)。

例如,上面举的汉字“天”的国标码是76、108,将国标码的每个字节都加128,就得到其机内码204、236(均是十进制),写成十六进制就是CCH、ECH,写成二进制便是11001100B、11101100B。

每个字节的第8位都由0变成了1,其余位不变。

“天”的机内码:

1100110011101100

第2字节第1字节

通过以上分析可看出,汉字国标码在两个字节中占用7位,而汉字机内码在每个字节中的8位全占用了。在计算机内部实际采用都是机内码而不是国标码。

还要指出的是,机内码是个相当广泛的概念,凡是计算机内部实际采用的汉字代码都叫机内码,我们以上所说的是采用双字节并且将国标码的每个字节的最高位都置为1,这只是目前一种最常用的汉字机内码方案,但汉字内码不止这一种,如台湾等地采用的就不是这种机内码方案,但这同样也叫机内码。

国标码 区位码等的区别

即GB国标码:中文内码之一,代表中文简化字,在中国大陆广泛使用,影响所及,使用量渐见普及。“国家标准信息交换用汉字编码”(GB2312-80标准),简称国标码。国标码是指1980年中国制定的用于不同的具有汉字处理功能的计算机系统间交换汉字信息时使用的编码。国际码是二字节码, 用两个七位二进制数编码表示一个汉字。目前国标码收入6763个汉字, 其中一级汉字(最常用)3755个, 二级汉字3008个, 另外还包括682个西文字符、图符。例如“巧”字的代码是39H 41H, 在机内形式如下: 0 1 1 1 0 0 1 1 第一字节0 0 0 0 0 1第二字节在计算机内部,汉字编码和西文编码是共存的,如何区分它们是个很重要的问题,因为对不同的信息有不同的处理方式。方法之一是对于二字节的国标码,将二个字节的最高位都置成“1”, 而ASCII码所用字节最高位保持“0”,然后由软件(或硬件)根据字节最高位来作出判断。字符代码化是指用户从键盘上输入代表某个汉字的编码。我们把采用不同的编码系统以代表汉字进行输入的方案(如数字码、拼音码和字形码),称为汉字的输入法,区位码、五笔字型码、拼音码、智能ABC、微软拼音输入法等都是其中的具体代表。汉字通过编码输入计算机后,在其后的处理过程中,不同阶段使用不同的代码,首先通过键盘管理程序将接收到的输入编码转换为0和1构成的机内码,实现计算机的存储、加工和传输处理。同样,存储在计算机内部的机内码也必须经转换后才能恢复汉字的“本来面目”。这种转换通常是由计算机的输入/输出设备来实现的, 有时还需要软件来参与这种转换过程。这个阶段的汉字代码称为字形码,用以显示和打印输出。 区位码: 1980年,为了使每一个汉字有一个全国统一的代码,我国颁布了第一个汉字编码的国家标准:GB2312-80〇信息交换用汉字编码字符集〈基本集,这个字符集是我国中文信息处理技术的发展基础,也是目前国内所有汉字系统的统一标准。 国标码是一个四位十六进制数,区位码是一个四位的十进制数,每个国标码或区位码都对应着一个唯一的汉字或符号,但因为十六进制数我们很少用到,所以大家常用的是区位码,它的前两位叫做区码,后两位叫做位码。 汉字库分布情况如下: 一级汉字16-55区 二级汉字56-87区 三级汉字1-9区 空闲未用10-15区 通常,在DOS下的各汉字系统中,同时按Alt键和F1键即可调用区位码输入方法。而在Windows中常用Ctrl+空格键和Ctrl+Shift键调出区位码。如“2901”代表“健”字,“4582”代表“万”字,“8150”代表“楮”字,这些都是汉字,用区位码还可以很轻松地输入特殊符号,比如,“0189”代表“※”(符号),“0528”代表“ゼ”(日本语),“0711”代表“Й”(俄文),“0949”代表“┭”(制表符)。 在区位码中,01-09区为特殊字符,10-55区为一级汉字(3755个最常用的汉字,按拼

汉字的机内码、国标码和机内码关系

汉字的机内码 机内码是内部存储、处理汉字时使用的编码,用两个字节表示一个汉字; 将国标码的两个字节高位置1,避免与ASCII码冲突; 区位码、国标码和机内码关系:区位码是一种基于GB2312-80字符集(94行×94列)的输入码,使用十进制表示其区码(范围01~94)和位码(范围01~94),各占两位,故每个汉字对应4位十进制数码(范围0101~9494)。国标码则用16进制表示两个字节,其每字节编码范围21h~7Eh(即十进制33~126二进制00100001~01111110),前后字节分别对应区位码的区码(加上32或20h)和位码(加上32或20h),故汉字国标码编码范围2121h~7E7Eh。机内码也用16进制表示两个字节,将国标码的前后两个字节最高位置1(即各加80h)就变成机内码,其每字节编码范围A1h~FEh(即二进制10100001~11111110),故汉字机内码编码范围为A1A1h~FEFEh。 例: 汉字区位码国标码机内码沪270600011011 00000110 + 00100000 00100000 00111011 00100110 =3B2610111011 10100110=BBA6久303500011110 00100011 + 00100000 00100000 00111110 01000011 =3E4310111110 11000011=BEC3区位码区码位码各加上32或20h国标码两个字节最高位置1(即各加128或80h)机内码 A1A1~FEFE (十进制) (十六进制) (十六进制) 0101~5E5E (十六进制) 沪: 2706 (十进制) 3B26 (十六进制)BBA6 (十六进制) 1B06 (十六进制) 久: 3035 (十进制) 3E43 (十六进制)BEC3 (十六进制) 1E23 (十六进制)

(好)汉字机内码、国标码和区位码定义区别

1.国家标准汉字代码体系 汉字字数繁多,属性丰富,因而汉字代码体系也较复杂,包括: (1)汉字机内码。它们是汉字在计算机汉字系统内部的表示方法,是计算机汉字系统 的基础代码。 (2)汉字交换码。它们是国标汉字(如机内码)进行信息交换的代码标准。 (3)汉字输入码。它们是在计算机标准键盘上输入汉字用到的各种代码体系。 (4)汉字点阵码。它们是在计算机屏幕上显示和在打印机上打印输出汉字的代码体系。 (5)汉字字形控制码。为了打印各种风格的字体和字形所制定的代码。 这些代码系统有的必须有统一的国家标准,有的则不要求统一。近年来我国已经制定 系列汉字信息处理方面的国家标准,今后将继续完善,并与国际上求得统一。 2.国家标准汉字交换码(国标码) 我国制定了“中华人民共和国国家标准信息交换汉字编码”,标准代号为GB2312—80,这种编码又称为国标码。在国标码的字符集中共收录了一级汉字3755个,二级汉字3008 个,图形符号682个,三项字符总计7445个。 国标码是指1980年中国制定的用于不同的具有汉字处理功能的计算机系统间交换汉字信息时使用的编码。国际码是二字节码, 用两个七位二进制数编码表示一个汉字。目前国标码收入6763个汉字, 其中一级汉字(最常用)3755个, 二级汉字3008个, 另外还包括682个西文字符、图符。一级汉字为常用字,按拼音顺序排列,二级汉字为次常用字,按部首排列。国标码的范围是2121H—7E7EH。 3、区位码: 国标码是一个四位十六进制数,区位码是一个四位的十进制数,每个国标码或区位码都对应着一个唯一的汉字或符号,但因为十六进制数我们很少用到,所以大家常用的是区位码,它的前两位叫做区码,后两位叫做位码 在国标GB2312—80中规定,所有的国标汉字及符号分配在一个94行、94列的方阵中,方阵的每一行称为一个“区”,编号为01区到94区,每一列称为一个“位”,编号为01 位到94位,方阵中的每一个汉字和符号所在的区号和位号组合在一起形成的四个阿拉伯 数字就是它们的“区位码”。区位码的前两位是它的区号,后两位是它的位号。用区位码 就可以唯一地确定一个汉字或符号,反过来说,任何一个汉字或符号也都对应着一个唯一的区位码。汉字“母”字的区位码是3624,表明它在方阵的36区24位,问号“?”的区 位码为0331,则它在03区3l位。 所有的汉字和符号所在的区分为以下四个组: (1)01区到15区。图形符号区,其中01区到09区为标准符号区,10区到15区为 自定义符号区。 01区到09区的具体内容如下; 1)01区。一般符号202个,如间隔符、标点、运算符、单位符号及制表符; 2)02区。序号60个,如1.~20.、(1)~(20)、①~⑩及(一)~(十); 3)03区。数字22个,如0—9及X一XII,英文字母52个,其中大写A—Z、小写 a—z各26个; 4)04区。日文平假名83个; 5)05区。日文片假名86个; 6)06区。希腊字母48个; 7)07区。俄文字母66个;

区位码、国标码与内码的区别联系与转换

区位码、国标码与内码的区别联系与转换 1980年,为了使每一个汉字有一个全国统一的代码,我国颁布了第一个汉字编码的国家标准:GB2312-80《信息交换用汉字编码字符集》基本集,这个字符集是我国中文信息处理技术的发展基础,也是目前国内所有汉字系统的统一标准。国标码是一个四位十六进制数,区位码是一个四位的十进制数,每个国标码或区位码都对应着一个唯一的汉字或符号,但因为十六进制数我们很少用到,所以大家常用的是区位码,它的前两位叫做区码,后两位叫做位码。 简单的说,区位码也就是国标码。 所谓“国标码”,是指国家标准汉字编码。一般是指国家标准局1981年发布的《信息交换用汉字编码字符集(基本集)》,简称GB-2312。在这个集中,收进汉字6763个,其中一级汉字3755个,二级汉字3008个。一级汉字为常用字,按拼音顺序排列,二级汉字为次常用字,按部首排列。 GB-2312中,在平面上把汉字分为94个区,每个区94个位。每个收进的汉字有一个固定的区位。例如“啊”字,位于16区,01位,这个区号和位号就构成了它的区位码“1601”。这就是我上面说的,区位码就是国标码。 但区位码和国标码还是有一点差别,那就是在GB-2312中预留了一些空位,可以进行补充、扩展,经扩展的区位码就从数量、范围上超过了GB-2312了。 上面是就大陆而言的,台湾、香港、和其他汉语国家,也是用区位码,但他们的区位号与大陆用的就不一定相同了。这是区位与国标的又一区别。 内码是保存在计算机中或文件中的汉字编码。它是十六进制的(当然在机器中是二进制了)。在计算机中,汉字不能直接用区位码来表示。例如“65”,在ASCII中,它表示“A”,在GB-2312中表示第65区。如果在计算机中用一个“65”用来表示65区的话,就不知是“A”,还是“65区”了。所以在计算机“内部”,就要用“内码”了。内码的基础还是区位码。 一般有下面的换算公式: 国标码=区位码+2020H; 机内码=国标码+8080H =区位码+A0A0H。

国标码和机内码

输入码、区位码、国标码与机内码 国家标准局1980年颁布的《信息交换用汉字编码字符集"基本集》(代号为GB2312 80)规定的汉字交换码作为国家标准汉字编码。 GB2312 80中共有7445个字符符号:汉字符号6763个一级汉字3755个(按汉语拼音字母顺序排列)二级汉字3008个(按部首笔划顺序排列)非汉字符号682个 GB2312 80规定,我们知道,键盘是当前微机的主要输入设备,;输入码就是使用英文键盘输入汉字时的编码。目前,我国已推出的输入码有数百种,但用户使用较多的约为十几种,按输入码编码的主要依据,大体可分为顺序码、音码、形码、音形码四类, BAO”,用区位码,输入码为“1703”,用五笔字型则为“WKS”。 计算机只识别由0、1组成的代码,ASCII码是英文信息处理的标准编码,汉字信息处理也必须有一个统一的标准编码。汉字交换码(国标码)主要用于汉字信息交换,我国国家标准局于1981年5月颁布了《信息交换用汉字编码字符集——基本集》,代号为GB2312-80,共对6763个汉字和682个图形字符进行了编码,其编码原则为:汉字用两个字节表示,每个字节用七位码(高位为0),;所有的国标码汉字及符号组成一个94行94列的二维代码表中。在此方阵中,每一行称为一个"区",每一列称为一个"位"。这个方阵实际上组成一个有94个区(编号由01到94),每个区有94个位(编号由01到94)的汉字字符集。每两个字节分别用两位十进制编码,前字节的编码称为区码,后字节的编码称为位码,此即区位码,其中,高两位为区号,低两位为位号。这样区位码可以唯一地确定某一汉字或字符;反之,任何一个汉字或符号都对应一个唯一的区位码,没有重码。如“保”字在二维代码表中处于17区第3位,区位码即为“1703 ”。 国标码并不等于区位码,它是由区位码稍作转换得到,其转换方法为:先将十进制区码和位码转换为十六进制的区码和位码,;这样就得了一个与国标码有一个相对位置差的代码,;再将这个代码的第一个字节和第二个字节分别加上 20H3123H,它是经过下面的转换得到的:1703D->1103H->+20H->3123H。 国标码是汉字信息交换的标准编码,但因其前后字节的最高位为0,与ASCII 31H和23H,而西文字符“1”和“#”的SCII也为31H和23H,现假如内存中有两个字节为31H和23H,;这到底是一个 1”;和“#”?于是就出现了二义性,显然,国标码是不可能在计算机内部直接采用的,于是,;汉字的机内码采用变形国标码,其

区位码国标码机器码的换算教程

请熟练掌握进制转换的同学再来学习本教程。 另外,建议同学先看书或上网自学,将本节的基本概念弄清楚后再来看本教程。本教程只教换算方法,概念问题这里不多讲解。 ------------------------------------------------------------------------------------------- 首先给出公式: 区位码+2020H=国标码(运用此公式时要先把区位码按要求转成16进制) 国标码+8080H=机内码 区位码+A0A0H=机内码(运用此公式时要先把区位码按要求转成16进制) ------------------------------------------------------------------------------------------------------------ 看几个例子: 假设某字的区位码为: 3891 ,求其国标码,机内码. 1.首先把3891分成 38 和 91 两部分转换成16进制 38转换成十六进制是26 91转换成十六进制是5B 所以3891按要求转换后为 265B 2.然后运用公式:区位码+2020H=国标码(H代表16进制,不多解释) 265B +2020 -------- = 467B 所以国标码为 467B 3.计算机内码,运用国标码+8080H=机内码或区位码+A0A0H=机内码 由区位码 265B +A0A0 (A代表10,不多解释) ------- =C6FB

或由国标码 467B +8080 ------- =C6FB 这里稍稍解释一下,大家可能会问7+8下来为什么是F…因为7+8=15,在十六进制中,我们用F代替15…进而得到结果..其他也类似… SO。。机内码计算结果为C6FB

机内码与国标码的关系

西文字符由于数量较少(通常不超过128个),所以采用1个字节(8位)就能完成对所有的西文字符的编码,ASCⅡ码规定西文字符的编码只使用字节的低7位(从第1位到第7位),最高位设为0。所以ASCⅡ码的编码范围是十进制数0~127(写成十六进制即00H~7FH)。 汉字的个数远比西文字符多,国家标准规定的最常用和较常用的汉字便近8000个。显然,如果象西文字符那样采用1个字节对汉字编码就不够了。所以国家标准规定,每个汉字的编码都采用2个字节表示。汉字国标码的一个特点是,尽可能与西文字符的ASCⅡ码相一致。所以汉字国标码的每个字节都只采用其最低7位(从第1位到第7位)。最高位仍然取0。 汉字国标码的取值范围是十进制数33~126(写成十六进制即21H~7EH)。 举例来说,“天”字国标码的两个字节分别是76、108(十进制),写成十六进制是4CH,6CH,写成二进制便是01001100B,01101100B:“天”的国标码: 0100110001101100 第2字节第1字节 汉字国标码作为一种国家标准,是所有汉字编码都必须遵循的一个共同标准,但由于国标码每个字节的最高位都是0,这正好与ASCⅡ码相冲突。例如“天”字的国标码是76、108,而西文字符“L”和“l”的ASCⅡ码也恰好是76和108,现在假如内存中有两个字节76、108,这到底是一个汉字“天”呢,还是两个西文字符“L”和“l”?都有可能,这就出现了二义性。显然国标码在计算机内部是不可能直接使用的,必须对其进行某种变换后才可以使用。其变换方法便是将国标码双字节的每个字节都加上128,相当于将国标码每个字节的最高位即第8位都由0变成1,其余7位不变。这种经过变换的国标码就是汉字的机内码。显然汉字机内码的每个字节都大于128,这就与西文字符的ASCⅡ码区分开了(ASCⅡ码都小于128)。 例如,上面举的汉字“天”的国标码是76、108,将国标码的每个字节都加128,就得到其机内码204、236(均是十进制),写成十六进制就是CCH、ECH,写成二进制便是11001100B、11101100B。 每个字节的第8位都由0变成了1,其余位不变。 “天”的机内码: 1100110011101100

输入码国标码机内码字型码

输入码、国标码、机内码、字型码 西文是拼音文字,基本符号比较少,编码比较容易,因此,在一个计算机系统中,输入、内部处理、存储和输出都可以使用同一代码。汉字种类繁多,编码比拼音文字困难,因此在不同的场合要使用不同的编码。通常有4种类型的编码,即输入码、国标码、内码、字形码。 ①输入码 输入码所解决的问题是如何使用西文标准键盘把汉字输入到计算机内。有各种不同的输入码,主要可以分为三类:数字编码、拼音编码和字编型码。 ●数字编码。就是用数字串代表一个汉字,常用的是国标区位码。它将国家标准局公布的6763个两级汉字分成94个区,每个区分94位。实际上是把汉字表示成二维数组,区码、位码各用两位十进制数表示,输入一个汉字需要按4次键。数字编码是惟一的,但很难记住。比如“中”字,它的区位码以十进制表示为5448(54是区码,48是位码),以十六进制表示为3630(36是区码,30是位码)。以十六进制表示的区位码不是用来输入汉字的。 ●拼音编码。是以汉字读音为基础的输入方法。由于汉字同音字太多,输入后一般要进行选择,影响了输入速度。 ●字型编码。是以汉字的形状确定的编码,即按汉字的笔画部件用字母或数字进行编码。如五笔字型、表形码,便属此类编码,其难点在于如何拆分一个汉字。 ②国标码 又称为汉字交换码,在计算机之间交换信息用。用两个字节来表示,每个字节的最高位均为0,因此可以表示的汉字数为214=16384个。将汉字区位码的高位字节、低位字节各加十进制数32(即十六进制数的20),便得到国标码。例如“中”字的国标码为8680(十进制)或7468(十六进制)。这就是国家标准局规定的GB2312—80信息交换用汉字编码集。 ③内码 汉字内码是在设备和信息处理系统内部存储、处理、传输汉字用的代码。无论使用何种输入码,进入计算机后就立即被转换为机内码。规则是将国标码的高位字节、低位字节各自加上128 为了统一表示世界各国的文字,1993年国际标准化组织公布了“通用多八位编码字符集”的国际标准ISO/IEC 10646,简称UCS(Universal Code Set),它为包括汉字在内的各种正在使用的文字规定了统一的编码方法。该标准使用4个字节来表示一个字符。其中,一个字节用来编码组,因为最高位不用,故总共表示128个组。一个字节编码平面,总共有256个平面,这样,每一组都包含256个平面。在一个平面内,用一个字节来编码行,因而总共有256行。再用一个字节

区位码、交换码、机内码

GB2312汉字区位码、交换码和机内码转换方法 1981年我国颁布了GB2312字符集。该字符集收录了6763个常用汉字和682个非汉字字符, GB2312字符集构成一个94行、94列的二维表,行号称为区号,列号称为位号,每一个汉字或符号在码表中的位置用它所在的区号和位号来表示。例如,“学”字的区号为 49,位号为07,“学”字的区位码 ...即为4907 用二进制数表示为:0011000100000111B 用十六进制数表示为:3107H 汉字的区位码习惯采用十进制 区位码无法用于汉字通信,因为它可能与通信使用的控制码(00H~1FH)(即0~31)发生冲突。ISO2022规定每个汉字的区号和位号必须分别加上32(即二进制数00100000B十六进制数20H),经 过这样的处理而得的代码称为国标交换码 ...,因 ...或国标码 .....,简称交换码 此,“学”字的国标交换码为: 用十进制来表示为:8139 49 07 + 32 + 32 8139 用二进制来表示为:0101000100100111B 00110001 00000111B + 00100000 + 00100000B 01010001 00100111B

用十六进制数表示为5127H。 31 07H + 20 + 20H 5127H 汉字的交换码(国标码)习惯采用十六进制 由于文本中通常混合使用汉字和西文字符,汉字信息如果不予以特别标识,就会与单字节的ASCII码混淆。如“学”的交换码与“Q’”的ASCII码相同。 此问题的解决方法是将一个汉字看成是两个扩展ASCII码,使表示GB2312汉字的两个字节的最高位都为1。这种高位为1的双字节汉字编码即为GB2312汉字的机内码,简称为内码。

区位码

区位码、国标码、机内码 国标码:(“国家标准信息交换用汉字编码”(GB2312-80标准)) 国标码是指1980年中国制定的用于不同的具有汉字处理功能的计算机系统间交换汉字信息时使用的编码。国际码是二字节码, 用两个七位二进制数编码表示一个汉字。目前国标码收入6763个汉字, 其中一级汉字(最常用)3755个, 二级汉字3008个, 另外还包括682个西文字符、图符。一级汉字为常用字,按拼音顺序排列,二级汉字为次常用字,按部首排列。国标码的范围是2121H—7E7EH。 国标码是一个四位十六进制数,区位码是一个四位的十进制数,每个国标码或区位码都对应着一个唯一的汉字或符号,但因为十六进制数我们很少用到,所以大家常用的是区位码,它的前两位叫做区码,后两位叫做位码 区位码:将GB 2312—80的全部字符集组成一个94×94的方阵,每一行称为一个“区”,编号为0l~94;每一列称为一个“位”,编号为0l~94,这样得到GB 2312—80的区位图,用区位图的位置来表示的汉字编码,称为区位码。 机内码:为了避免ASCII码和国标码同时使用时产生二义性问题,大部分汉字系统都采用将国标码每个字节高位置1作为汉字机内码。这样既解决了汉字机内码与西文机内码之间的二义性,又使汉字机内码与国标码具有极简单的对应关系。 汉字交换码:汉字信息处理系统之间或通信系统之间传输信息时,对每一个汉字所规定的统一编码,我国已指定汉字交换码的国家标准“信息交换用汉字编码字符集——基本集”,代号为GB 2312—80,又称为“国标码”。 汉字机内码、国标码和区位码三者之间的关系: 区位码(十进制)的两个字节分别转换为十六进制后加20H得到对应的国标码;机内码是汉字交换码(国标码)两个字节的最高位分别加1,即汉字交换码(国标码)的两个字节分别加80H得到对应的机内码;区位码(十进制)的两个字节分别转换为十六进制后加A0H得到对应的机内码。 (1)区位码先转换成十六进制数表示 (2)国标码=区位码的十六进制表示+2020H (3)机内码=国标码+8080H=区位码+A0A0H 举例: 以汉字“大”为例,“大”字的区内码为2083 1、区号为20,位号为83 2、将区位号2083转换为十六进制表示为1453H

什么是国标码什么是区位码什么是内码国标码、区位码、 内码 的关系

什么是国标码什么是区位码什么是内码国标码、区位码、内码的关系.txt和英俊的男人握握手,和深刻的男人谈谈心,和成功的男人多交流,和普通的男人过日子。什么是国标码?什么是区位码?什么是内码?国标码、区位码、内码的关系? 1. 输入码 汉字的字数繁多,字形复杂,常用的汉字有6000—7000个,比英文的26个字母要多得多。在计算机系统中使用汉字,首先遇到的问题就是如何把汉字输入到计算机内。为了能直接使用西文标准键盘进行输入,必须为汉字设计相应的编码方法。汉字编码方法主要分为三类:数字编码、拼音编码和字形编码。 ⑴数字编码 数字编码就是用数字串代表一个汉字的输入,常用的是国标区位码。国标区位码将国家标准局公布的的6763个两级汉字分成94个区,每个区定为94位,实际上是把汉字表示成二维表的形式,区码和位码各用两位十进制数字表示,因此,输入一个汉字需要按键四次。例如,“中”字位于第54区48位,区位码为5448。 汉字在区位码表的排列是有规律的。在94个分区中,1—15区用来表示字母、数字和符号,16—87区为一级和二级汉字。使用区位码方法输入汉字时,必须先在表中查找汉字并找出对应的代码,才能输入。数字编码输入的优点是无重码,而且输入码和内部编码的转换比较方便,但是每个编码都是等长的数字串,代码难以记忆。 ⑵拼音编码 拼音编码是以汉语读音为基础的输入方法。由于汉字同音字太多,输入重码率很高,因此,按拼音输入后还必须进行同音字选择,影响了输入速度。 ⑶字形编码 字形编码是以汉字的形状确定的编码。汉字总数虽多,但都是由一笔一划组成,全部汉字的部件和笔划是有限的。因此,把汉字的笔划部件用字母或数字进行编码,按笔划书写的顺序依次输入,就能表示一个汉字,五笔字型、表形码等便是这种编码法,这种方法得缺点也是需要记忆很多的编码。五笔字型编码是最有影响的字形编码方法之一。 2. 汉字国标交换码和机内码

区位码国标码机内码习题

1、计算机内部使用的数是() A、二进制数 B、八进制数 C、十进制数 D、十六进制数 2、十进制数269转换为十六进制数为() A、10E B、10D C、10C D、10B 3、二进制数1010.101对应的十进制数是() A、11.33 B、10.625 C、12.755 D、16.75 4、十六进制数1A2H对应的十进制数是() A、418 B、308 C、208 D、578 5、十六进制数(AB)16变换为等值的十进制数是() A、17 B、161 C、21 D、171 6、某汉字的区位码是2534,它的国际码是__________________ 7、微机中1KB表示的二进制位数是() A、1000 B、8×1000 C、1024 D、8×1024 8、从数制的概念出发,下列各数的表示中符合八进制数表示的是() A、7069 B、80586 C、1101 D、CAF 9、一个汉字的国标码是5E38,其内码应是_______________________ 10、某汉字的国标码是1112H,它的机内码是__________________ 11、汉字“中”的十六进制的机内码是D6D0H,那么它的国际码是_________ 12、某汉字的区位码是3721,它的国标码是_______________________ 13、在ASCII码表中,已知英文字母K的十进制码值是75,则英文字母 m的十进制码值是___________________________ 14、字长为7位的无符号二进制整数能表示的十进制整数范围是( ) A、0~128 B、0~255 C、0~127 D、1~127 15、已知英文字母M的ASCII码值为6DH,那么ASCII码值为70H的英文字母是____________ 16、在32×32点阵的字形码需要多少存储空间?() A、32B B、64B C、72B D、128B 17、一个汉字的区位码是2020,其国标码应是________________________ 18、某汉字的区位码是1703,它的国标码是_____________________________ 19、汉字“德”的区位码是2134,那么它的国际码是__________________________ 20、某汉字的区位码是2026,它的国标码是____________________________________

国标码区位码说明

1.国标码:“国家标准信息交换用汉字编码”(GB2312-80标准),简称国标码。 国标码是二字节码, 用两个七位二进制数编码表示一个汉字。 2.区位码:为了使每一个汉字有一个全国统一的代码,区位码是国家规定的 94*94的一个方阵,其中每行叫做一个区,每列叫做一个位,组合起来就组成了区位码,我们可以在相关网站查询某个汉字的区位码,例如汉字“我”的区位码是46 50 ,标识“我”在46区,50位。 3.机内码:机内码是在计算机中存储的汉子编码。 三者之间的关系。 国标码=16进制的区位码+2020H 机内码=国标码+8080H 例如“我”的的区位码是46 50 这是10进制的转化为16进制:2E32H 所以“我”的国标码:2E32H+2020H=4E52H 所以“我”机内码:4E52H+8080H=CED2(其实就是把二进制国标码的最高位置1,注意看E和2都没有变化) 机内码转化为2进制就可以再计算机中存储,这里面转化为10进制可以输出。 CED2的10进制为:52946,这里我们打开记事本,按住alt建,输入52946即可以看见“我”,因为52946是“我”的机内码的10进制。 这里面有两个问题: 1.为什么不用区位码直接表示国标码,为要加上2020H? 2.机内码为什么要在国标码的基础上加上8080H,而不是直接只用国标码作为机内码? 这里我先解决第二个问题, 国标码就是由2个ASCII码组成,为什么呢(这里简单介绍一下,后面会详细说明)?因为在英文中只有26个字母,所以用一个字节就可以表示了,用一个字节的话可以表示2^8个符号,就是256个符号,绰绰有余啊,于是外国人制订了规范,规定0-127(00000000-01111111)个字符他们用了,用来表示英文字符和一些符号,就是ASCII码,但是汉字有很多,256个根本就不够,于是国家就用两个ASCII来表示一个汉字,就是2个字节标识一个汉字,例如“保”的区位码为:1703,所以国标码为:1703的10进制+2020H=3123H, 然而:31H 和23H在ASCII中式有值的,31H在ASCII中表示数字1,23H表示

汉字的国标码机内码区位码区别

汉字的国标码机内码区位码区别 文字编码系列--汉字的国标码,机内码,区位码(gbcode查出的是区位码) 1.国标码:“国家标准信息交换用汉字编码”(GB2312-80标准),简称国标码。 国标码是二字节码, 用两个七位二进制数编码表示一个汉字。 2.区位码:为了使每一个汉字有一个全国统一的代码,区位码是国家规定的94*94的一个方阵,其中每行叫做一个区,每列叫做一个位,组合起来就组成了区位码,我们可以在相关网站查询某个汉字的区位码,例如汉字“我”的区位码是46 50 ,标识“我”在46区,50位。 3.机内码:机内码是在计算机中存储的汉子编码。 三者之间的关系。 国标码=16进制的区位码+2020H 机内码=国标码+8080H 例如“我”的的区位码是46 50 这是10进制的转化为16进制:2E32H(46==2E,50==32)所以“我”的国标码:2E32H+2020H=4E52H 所以“我”机内码:4E52H+8080H=CED2(其实就是把二进制国标码的最高位置1,注意看E和2都没有变化) 机内码转化为2进制就可以再计算机中存储,这里面转化为10进制可以输出。 CED2的10进制为:52946,这里我们打开记事本,按住alt建,输入52946即可以看见“我”,因为52946是“我”的机内码的10进制。 这里面有两个问题: 1.为什么不用区位码直接表示国标码,为要加上2020H? 2.机内码为什么要在国标码的基础上加上8080H,而不是直接只用国标码作为机内码? 这里我先解决第二个问题, 国标码就是由2个ASCII码组成,为什么呢(这里简单介绍一下,后面会详细说明)?因为在英文中只有26个字母,所以用一个字节就可以表示了,用一个字节的话可以表示2^8个符号,就是256个符号,绰绰有余啊,于是外国人制订了规范,规定0-127(00000000-01111111)个字符他们用了,用来表示英文字符和一些符号,就是ASCII码,但是汉字有很多,256个根本就不够,于是国家就用两个ASCII来表示一个汉字,就是2个字节标识一个汉字,例如“保”的区位码为:1703,所以国标码为:1703的10进制+2020H=3123H, 然而:31H 和23H在ASCII中式有值的,31H在ASCII中表示数字1,23H表示的是“#”(这个可以在网上查询),那么如果我以国标码作为机内码的话,如果内存中有两个字节为31H和23H,那么到底是表示汉字“保”呢?还是字符1#呢?这样就有了歧义,但是解决办法就有了,0-127不是被英文字符占了吗?那么我就用127之后的来表示不就可以了吗?于是我把汉字的两个字节每个字节机上128(16进制就是80H),于是问题解决了,汉字“保”的机内码变为:3123H+8080H=B2A3H(10进制就是45475),打开记事本按住alt+45475看看是不是“保”,这样就不会和英文的ASCII冲突了。

相关文档
最新文档