ASCII,GB2312,GBK,Unicode,Utf-8

2023-05-19,,

1.ASCII:American Stardand Code for Information Interchange,是当时美国制定出来的一套编码系统,使用7位或8位二进制来表示西文字符,0-31以及127为控制字符或通信用字符,其余为可显示出来的字符。在标准的ASCII中最高位b7作为奇偶校验位。后面128个则称为扩展ASCII码,以满足当时不同地方特殊符号的需求。

2.ISO-8859-1编码是单字节编码,向下兼容ASCII,其编码范围是0x00-0xFF,0x00-0x7F之间完全和ASCII一致,0x80-0x9F之间是控制字符,0xA0-0xFF之间是文字符号。此字符集主要支持欧洲使用的语言.

3.GB2312:中华民族传承下来的汉字怎么破?gb2312就这样来了,采用两个字节来编码,沿用ASCII中前127个字符的编码,127之后的字符全部去掉。两个字节中前一个称为高字节(oxA1-ox7),后一个为低字节(oxA1-oxFE),这样能组合映射出来7000多汉字,同时还把ASCII中前127个字符重新编码一次,被称为'全角',127以下称为'半角'。

4.GBK:国标扩展,虽然gb2312囊括了大部分汉字,但还是有一些像繁体字和符号就没有编入进来,于是再次进行扩展,便有gbk。两个字节中只要第一个字节是大于127,便认为是一个汉字的开始,这样不仅囊括进gb2312所有的内容(保持gb2312的编码),同时还增加了20000多汉字和一个其他字符。

5.Unicode:未解决传统编码的局限而生,用来容纳世界上所有的文字和字符。从0-0x10FFFF来映射这些字符,最多可以容纳1114112个字符,UTF-8/UTF-16/UTF-32都是将数字转换到程序数据的编码方案。

6.Utf-8:对不同范围的字符使用不同长度的编码。对于0x00-0x7F之间的字符,UTF-8编码与ASCII编码完全相同。UTF-8编码的最大长度是4个字节。从上表可以看出,4字节模板有21个x,即可以容纳21位二进制数字。Unicode的最大码位0x10FFFF也只有21位。

7.txt文本编码:ANSI,Unicode,Utf-8

1)ANSI是默认的编码方式。对于英文文件是ASCII编码,对于简体中文文件是GB2312编码(只针对Windows简体中文版,如果是繁体中文版会采用Big5码)。

2)Unicode编码指的是UCS-2编码方式,即直接用两个字节存入字符的Unicode码。这个选项用的little endian格式(小头方式).

3)Unicode big endian编码与上一个选项相对应(大头方式).

注:Unicode规范中定义,每一个文件的最前面分别加入一个表示编码顺序的字符,这个字符的名字叫做"零宽度非换行空格"(ZERO WIDTH NO-BREAK SPACE),用FEFF表示。这正好是两个字节,而且FF比FE大1。如果一个文本文件的头两个字节是FE FF,就表示该文件采用大头方式;如果头两个字节是FF FE,就表示该文件采用小头方式

4)UTF-8编码。

ASCII,GB2312,GBK,Unicode,Utf-8的相关教程结束。

《ASCII,GB2312,GBK,Unicode,Utf-8.doc》

下载本文的Word格式文档,以方便收藏与打印。