Unicode和Ascii的区别
计算机只能处理数字,如果要处理文本,就必须把文本转换成数字。 最早的计算机设计采用8bit作为一个字节,所以,一个字节只能表示的最大整数255.
0-255被用来表示数字和一些符号,这个编码叫做ASCII。为了统一所有语言的编码Unicode就出现啦,Unicode一般用两个字节表示一个字符。
①ASCII就是编码英文的26个字母和一些常见的符号,之后扩展了一半。总之是一个字节来做编码,大于128的部分是一些特殊符号。但ASCII是无法编码别的东西的,比如说是不存在“中文的ascii码需要2个字符”这种说法的。ASCII就只有一个字节。
②Unicode是足够编码地球上所有的语言了,所以ASCII中所能表示的,Unicode当然全部包括了。Unicode本身是只有2个字节的,之所以出现UTF-8,UTF-16等等之类,那是为了针对不同的应用环境,提高整体编码效率,比如如果某篇文章里绝大部分是英语(单字节就能表示),就比较适合使用utf-8,而如果绝大部分是中文(需要双字节),可能就utf-16比较合适了。
③Unicode占用2个字节,容纳65536个字符,支持全世界所有的语言文字的编码,ASCII主要支持英文/字符的编码。