内码是指
计算机汉字系统中使用的
二进制字符编码,是沟通输入、输出与系统平台之间的
交换码,通过内码可以达到通用和高效率传输文本的目的。如
ASCII
简介
内码是指计算机汉字系统中使用的
二进制字符编码,是沟通输入、输出与系统平台之间的
交换码,通过内码可以达到通用和高效率传输文本的目的。比如MS Word中所存储和调用的就是内码而非图形文字。英文
ASCII字符采用一个
字节的内码表示,中文字符如国标字符集中,GB2312、GB12345、
GB13000皆用双字节内码,
GB18030(27,533汉字)双字节内码汉字为20,902个,其余6,631个汉字用四字节内码。
分类
字符编码:字符编码就是以二进制的数字来对应
字符集的字符,用得最普遍的字符集是
ANSI,对应ANSI字符集的
二进制编码就称为ANSI码,DOS和Windows系统都使用了ANSI码,但在系统中使用的字符编码要经过
二进制转换,称为系统内码。
汉字内码:ANSI码是单一
字节(8位
二进制数)的编码集,最多只能表示256个
字符,不能表示众多的汉字字符,各个国家和地区在ANSI码的基础上又设计了各种不同的
汉字编码集,以能够处理大数量的汉字字符。这些编码使用单字节来表示ANSI的英文字符(即兼容ANSI码),使用双字节来表示汉字字符。由于一个系统中只能有一种汉字内码,不能识别其它汉字内码的字符,造成了交流的不便。
GB码:GB码是1980年国家公布的简体汉字编码方案,在大陆、新加坡得到广泛的使用,也称
国标码。国标码对6763个汉字集进行了编码,涵盖了大多数正在使用的汉字。
GBK码:GBK码是
GB码的扩展
字符编码,对多达2万多的简繁汉字进行了编码,简体版的
Win95和Win98都是使用GBK作系统内码。
BIG5码:BIG5码是针对繁体汉字的汉字编码,在台湾、香港的
电脑系统中得到普遍应用。
HZ码:HZ码是在Internet上广泛使用的一种汉字编码。
ISO-2022CJK码:ISO-2022是
国际标准组织(ISO)为各种语言字符制定的编码标准。采用二个字节编码,其中汉语编码称ISO-2022 CN,日语、韩语的编码分别称JP、KR。一般将三者合称
CJK码。CJK码主要在Internet网络中使用。
Unicode码:Unicode码也是一种国际标准编码,采用二个字节编码,与
ANSI码不兼容。在网络、Windows系统和很多大型软件中得到应用。
内码转换
由于历史、地区原因,有时一种文字会出现多种编码方案,特别是汉字。由于不同于系统内码的字符不能在该系统中正常显示,必须要进行字符的内码转换,即将非系统内码的字符转换为系统可以识别的内码字符。南极星就是这样的优秀软件,其它如
四通利方、MagicWin98、
两岸通、汉字通等都是这样的内码转换工具。
相互转换
区位码、国标码与机内码的转换关系:
(2)(区位码的十六进制表示)+2020H=国标码;
(3)国标码+8080H=机内码
举例:以汉字“大”为例,“大”字的区内码为2083
解:1、区号为20,位号为83
2、将区位号2083转换为十六进制表示为1453H
3、1453H+2020H=3473H,得到国标码3473H
4、3473H+8080H=B4F3H,得到机内码为B4F3H
小结: 字符编码的两种表示方式:ASCII(字符的表示);GB2312(国标码,汉字编码)
相关区别
1、机外码就是你外界输入的字符,这个字符输入后会有一个相对应的区位码(就是一个94*94的棋盘格格,你输入的汉字会对应里面的一个格子,行+列就是我们这里的区+位),
2、区位码经过换算可以变成国标码(所以区位码→国标码这一步只是表示转换下而已),
3、国标码再经过换算可以变成机内码(一般是16进制数表示)。