不同芯片型号支持不同的文字编码体系,详见相关芯片的用户手册
GB2312码是中华人民共和国国家标准汉字信息交换用编码,全称《信息交换用汉字编码字符集 基本集》,标准号为GB2312-80(GB是“国标”二字的汉语拼音缩写),由中华人民共和国国家标准总局发布,1981 年5 月1 日实施。习惯上称国标码、GB码,或区位码。它是一个简化字汉字的编码,通行于中国大陆地区。新加坡等地也使用这一编码。
GB2312-80 收录简化汉字及一般符号、序号、数字、拉丁字母、日文假名、希腊字母、俄文字母、汉语拼音符号、汉语注音字母,共7445个图形字符。其中汉字以外的图形字符682个,汉字6763个。
GB2312-80 规定,“对任意一个图形字符都采用两个字节(Byte)表示。
识别类型 | 识别编码范围 | 备注 |
---|---|---|
半角ASCII符号区 | 0x00 --- 0x7F | - |
全角符号区 | 0xA1A0 --- 0xA3FE | - |
汉字区 | 0xB0A1 --- 0xF7FE | 共6768个汉字 |
GB2312-80仅收汉字6763个,这大大少于现有汉字,随着时间推移及汉字文化的不断延伸推广,有些原来很少用的字,现在变成了常用字,这使得表示、存储、输入、处理都非常不方便。
为了解决这些问题,以及配合UNICODE的实施,全国信息技术化技术委员会于1995年12月1日《汉字内码扩展规范》。GBK向下与GB2312完全兼容,向上支持ISO-10646国际标准。
GBK是GB2312-80的扩展,是向上兼容的。它包含了20902 个汉字,其编码范围是0x8140-0xfefe。其所有字符都可以一对一映射到UNICODE 2.0。GBK亦采用双字节表示。
识别类型 | 识别编码范围 | 备注 |
---|---|---|
半角ASCII符号区 | 0x00 --- 0x7F | - |
全角符号区 | 0xA1A0 --- 0xA3FE | - |
汉字区 | 0x8140 --- 0xA0FE 0xAA40 --- 0xFEFE |
共21003个汉字 |
在创造UNICODE之前,有数百种编码系统。但是,没有任何一个编码可以包含足够的字符。面临的现实问题是:使用相同的数字代表两个不同的字符,或使用不同的数字代表相同的字符。任何一台特定的计算机(特别是服务器)都需要支持许多不同的编码,但是,不论什么时候数据通过不同的编码或平台之间,那些数据总会有损坏的危险。
而在UNICODE标准中,提供了1,114,112 个码点,不仅可以包含当今世界使用的所有语言文字和其他符号,也足够容纳绝大多数具有历史意义的古文字和符号。并且UNICODE给每个字符提供了一个唯一的数字,不论是什么平台,不论是什么程序,不论什么语言。UNICODE标准已经被工业界所采用,许多操作系统,所有最新的浏览器和许多其他产品都支持它。UNICODE标准的出现和支持它的工具的存在,是近来全球软件技术最重要的发展趋势。
识别类型 | 识别编码范围 | 备注 |
---|---|---|
全角符号区 | 0x00区 0x30区 0xFF区 |
- |
汉字区 | 0x4E00 ---- 0x9FFF | 共20902个汉字 |
UTF-8(8位元,Universal Character Set/Unicode Transformation Format)是针对Unicode的一种可变长度字符编码。它可以用来表示Unicode标准中的任何字符,而且其编码中的第一个字节仍与ASCII相容,使得原来处理ASCII字符的软件无须或只进行少部分修改后,便可继续使用。因此,它逐渐成为电子邮件、网页及其他存储或传送文字的应用中,优先采用的编码。
UTF-8是一种变长字节编码方式。对于某一个字符的UTF-8编码,如果只有一个字节则其最高二进制位为0;如果是多字节,其第一个字节从最高位开始,连续的二进制位值为1的个数决定了其编码的位数,其余各字节均以10开头。
UTF-8最多可用到6个字节。
1字节 | 0xxxxxxx | |||||
2字节 | 110xxxxx | 10xxxxxx | ||||
3字节 | 1110xxxx | 10xxxxxx | 10xxxxxx | |||
4字节 | 11110xxx | 10xxxxxx | 10xxxxxx | 10xxxxxx | ||
5字节 | 111110xx | 10xxxxxx | 10xxxxxx | 10xxxxxx | 10xxxxxx | |
6字节 | 1111110x | 10xxxxxx | 10xxxxxx | 10xxxxxx | 10xxxxxx | 10xxxxxx |
识别类型 | 识别编码范围 | 备注 |
---|---|---|
全角符号区 | 单字节UTF8字符中的“对应Unicode的0x00区的内容” 双字节UTF8字符中的“对应Unicode的部分00区和全部03区的符号” |
- |
汉字区 | 三字节UTF8字符中的“对应Unicode的:20区以上的符号 + 汉字” | 共20902个汉字 |
BIG5是台湾计算机界实行的汉字编码字符集。它包含了 420 个图形符号和 13070 个繁体汉字(不包含简化汉字)。编码范围是 0x8140-0xFE7E、0x81A1-0xFEFE,其中 0xA140-0xA17E、0xA1A1-0xA1FE 是图形符号区,0xA440-0xF97E、0xA4A1-0xF9FE 是汉字区。
识别类型 | 识别编码范围 | 备注 |
---|---|---|
半角ASCII符号区 | 0x00 --- 0x7F | - |
全角符号区 | 0xA140 --- 0xA3FE | - |
汉字区 | 0xA440 --- 0xF9FE | 共13060个汉字 |