ASCII & GB2312 & UTF-8
ASCII
主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO 646;
7位(bits)表示一个字符,共128字符,其中32到126是可打印字符。为了表示更多的常用字符对ASCII进行了扩展,ASCII扩展字符集使用8位(bits)表示一个字符,共256字符;
GB2312
全称为《信息交换用汉字编码字符集·基本集》,由原中国国家标准总局发布,1981年5月1日实施;
中国国家标准的简体中文字符集;
双字节表示
两个字节中前面的字节为第一字节(高字节),后面的字节为第二字节(低字节);
"高位字节"使用了0xA1-0xF7(把01-87区的区号加上0xA0),"低位字节"使用了0xA1-0xFE(把01-94加上0xA0);
例如:
汉字"啊":区号16,位号01,则区位码是1601;
高字节和低字节分别加0xA0得到程序的汉字处理编码0xB0A1;
计算公式是:0xB0=0xA0+16, 0xA1=0xA0+1;
UTF-8
Unicode Tranformation Format;
不同的计算机之间使用网络传输不同语言和编码的文字,使得双字节的Unicode能够在现存的处理单字节的系统上正确传输;
使用可变长度字节来储存 Unicode字符
例如:
ASCII字母使用1字节储存;
希腊字母等使用2字节来储存;
常用的汉字使用3字节;
辅助平面字符使用4字节。
实践
ASCII
![744834-20160527182115725-1626961774.png](https://images2015.cnblogs.com/blog/744834/201605/744834-20160527182115725-1626961774.png)
GB2312
需要输入的内容是:
我是潼:ced2 cac7 e4fc
-woshitong:2d 77 6f 73 68 69 74 6f 6e 67
Hello5337:48 65 6c 6c 6f 35 33 33 37
(GB2312查看表:http://doc.chacuo.net/gb2312)
![744834-20160527182359584-969231489.png](https://images2015.cnblogs.com/blog/744834/201605/744834-20160527182359584-969231489.png)
因为vim默认显示utf-8字符集,要点击最上方的设置条,添加语言;
![744834-20160527183900116-1940475246.png](https://images2015.cnblogs.com/blog/744834/201605/744834-20160527183900116-1940475246.png)
跨平台16进制编辑器——hexedit
![744834-20160527185730678-1434574926.png](https://images2015.cnblogs.com/blog/744834/201605/744834-20160527185730678-1434574926.png)
![744834-20160527185758272-1367737611.png](https://images2015.cnblogs.com/blog/744834/201605/744834-20160527185758272-1367737611.png)
改用hexedit
![744834-20160527190112522-1035656766.png](https://images2015.cnblogs.com/blog/744834/201605/744834-20160527190112522-1035656766.png)
需要更改字符集为GB2312才能显示中文
![744834-20160527190237178-2115177592.png](https://images2015.cnblogs.com/blog/744834/201605/744834-20160527190237178-2115177592.png)
查看:cat指令
![744834-20160527190323084-1128477751.png](https://images2015.cnblogs.com/blog/744834/201605/744834-20160527190323084-1128477751.png)
UTF-8
同上步骤
![744834-20160527190517163-900649406.png](https://images2015.cnblogs.com/blog/744834/201605/744834-20160527190517163-900649406.png)
![744834-20160527190608178-1564404894.png](https://images2015.cnblogs.com/blog/744834/201605/744834-20160527190608178-1564404894.png)
使用iconv命令转换
![744834-20160527190647022-422947607.png](https://images2015.cnblogs.com/blog/744834/201605/744834-20160527190647022-422947607.png)
查看
![744834-20160527191225288-1803082275.png](https://images2015.cnblogs.com/blog/744834/201605/744834-20160527191225288-1803082275.png)
![744834-20160527191243944-2127377931.png](https://images2015.cnblogs.com/blog/744834/201605/744834-20160527191243944-2127377931.png)