Unicode与UTF8

1. ASCII码

8bit = 1字节,所以一个字节可以表示2^8=256个数字;
所以,一个字节可以表示所有的英文字符。
ASCII码(一个字节)成为了美国人的标准编码。

2. GB2312

中文不止256个字符,所以中国制定了GB2312编码,用两个字节表示一个汉字。
GB2312还把ASCII码包含进去了。

2. Unicode

但是,其他国家也同样制定了适合自己国家文字的编码规则,多种语言混合显示机会出现乱码。
于是,Unicode出现,将所有语言统一到一套编码中。

3. UTF-8

问题:

乱码问题虽然解决了,但如果内容全是英文,unicode编码比ASCII码需要多一倍的存储空间,传输过程需要多一倍的传输。

解决:

出现了可编程的编码utf-8,把英文变成1个字节,汉字变成3个字节,特别生僻的变成4-6个字节。
如果传输英文,utf-8的作用就非常明显了。

实际处理