位=bit,代表0或1
字节=byte=B=8bit
汉字=2byte=2B=16bit
http://www.freebuf.com/articles/others-articles/25623.html
http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html
一个字节在绝大部分计算机上都是8位,也就是从0000 0000到1111 1111,一共256个字符。
ASCII表上记录了0000 0000 -0111 1111 既0-127,一共128个字符
扩展ASCII表,EASCII不再是国际标准,里面包含了128-256,一共128个字符
Unicode编码是指是为了解决各国语言不同而产生的。前面带一个U。
记住,Unicode只是一个用来映射字符和数字的标准。
它对支持字符的数量没有限制,也不要求字符必须占两个、三个或者其它任意数量的字节。
Unicode字符是怎样被编码成内存中的字节这是另外的话题,它是被UTF(Unicode Transformation Formats)定义的。
UTF-8:
UTF-8是一个非常惊艳的概念,它漂亮的实现了对ASCII码的向后兼容,以保证Unicode可以被大众接受。、
在UTF-8中,0-127号的字符用1个字节来表示,使用和US-ASCII相同的编码。这意味着1980年代写的文档用UTF-8打开一点问题都没有。只有128号及以上的字符才用2个,3个或者4个字节来表示。因此,UTF-8被称作可变长度编码。
UTF-16:
另一个流行的可变长度编码方案是UTF-16,它使用2个或者4个字节来存储字符。然而,人们逐渐意识到UTF-16可能会浪费存储空间。
ANSI:
就是ASCII编码。一个英文字符占一个字符