2024-05-09 07:03:27 | 来源: 互联网整理
机外代码也称为输入代码。 键盘是当前微型计算机的主要输入设备,输入码是用英文键盘输入汉字的编码。 目前,我国已推出的输入码有数百种,但用户常用的约有十几种。 根据输入码编码的主要依据,可大致分为四类:顺序码、音形码、图形码、音形码。 例如“包”字,输入码为“BAO”,输入码为“1703”,五笔字库为“WKS”。
位置代码
位置代码也是一种脱机代码。 我国国家标准局于1981年5月颁布了《信息交换用汉字编码字符集——基本集》,代号-80,共编码了6763个汉字和682个图形字符。 编码原理为: 汉字由两个字节表示,每个字节由一个七位编码表示(高位为0); 国家标准将汉字和图形符号排列在94行94列的二维码表中; 每两个字节分别使用两位十进制编码。 第一个字节的编码称为区码,最后一个字节的编码称为位码。 这是区号。 例如,“包”字位于二维码表中区域17的第3个位置。 代码是“1703”。
国家标准代号
国家标准代码不等于地区代码。 它是通过区号稍微转换得到的。 转换方法是:先将十进制区号和位码转换为十六进制区号和位码,然后将这段代码的第三部分分别在第一个字节和第二个字节上加上20H,这样就得到了一个代码与位置代码的相对位置差异,位置代码是国家标准代码。
相机内代码
汉字内码,又称“汉字ASCII码”,简称“内码”,是指计算机内部存储、处理和传输汉字所使用的由0和1符号组成的代码。 输入码被接受后,无论采用何种键盘输入方式,都由汉字操作系统的“输入码转换模块”转换为内码。 内码是汉字最基本的编码。 无论何种汉字系统和汉字输入法,输入的汉字外码必须在机器内部转换成内码才能存储和处理。
区位码、国标码、机内码的关系
例如:“中”
区号:5448(区号数字为十进制)→ 3630H
国标代号:5650H=3630H+2020H
内部码:D6D0H=5650H+8080H
2020H、8080H
区位码、内码、国标码如何转换很简单,但令人费解的是为什么要这样转换呢? 这种转换不是无缘无故的!
首先请注意,虽然是中文编码,但它包含了26个英文字母和一些特殊符号的编码。 按理来说,与ASCII重叠的部分应该不需要设置。 我们可以只使用 ASCII 吗? 但在制定之前,决定覆盖ASCII中的符号和英文字母,因此对英文字母和符号进行了重新编码。 ASCII 中的前 32 个控制字符将继续使用。 因此,要保留前32个字符,需要将汉字编码向后移动32,即十六进制的20H。 这意味着位置代码必须加上20H才能获得国标代码。 这就是编码标准。
这就产生了一个缺点:一些早期用ASCII码编码的英文文章无法打开,打开时会出现乱码。 例如:“宝”字,国标码是31H和23H,西班牙字符“1”和“#”的ASCII码也是31H和23H。 现在,如果内存中有两个字节,分别是31H和23H,它们到底是什么? 是汉字吗? 或者两个西文字符“1”和“#”,这样就有歧义了。 显然,国标码不能在计算机内部直接采用,这意味着它应该兼容早期的ASCII码,而不是覆盖它! 为了解决这个问题,将字节的最高位设置为1,因为ASCII使用7位,最高位为0。这样可以区分ASCII和.。 这就是添加8080H的原因。
其实我们说的国标码就是标准编码。 后来的内码就是微软解决冲突问题所采用的方法。 它本质上是一个修改后的编码标准。 该方法产生的代码最终被一些教科书调用。 内部代码。
【参考博客】
热门手游排行榜