A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 夏皮冬絺 中级黑马   /  2015-3-13 09:52  /  590 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

计算机只认识0和1两个数字,多个0和1的组合可以表示很多字符,字符在存储到内存之前也都被转换成了二进制(0和1序列)。

可想而知,特定的字符必然对应着固定的0、1序列,否则将无法转换。那么,怎样将字符与0、1序列对应呢?这就需要有一套规范,计算机公司和软件开发者都必须遵守。
ASCII码
我们知道,一个二进制位(Bit)有0、1两种状态,一个字节(Byte)有8个二进制位,有256种状态,每种状态对应一个符号,就是256个符号,从0000000到11111111。

计算机诞生于美国,早期的计算机使用者大多使用英文,上世纪60年代,美国制定了一套英文字符与二进制位的对应关系,称为ASCII码,沿用至今。

ASCII码规定了128个英文字符与二进制的对应关系,占用一个字节(实际上只占用了一个字节的后面7位,最前面1位统一规定为0)。例如,字母 a 的的ASCII码为 01100001,那么你暂时可以理解为字母 a 存储到内存之前会被转换为 01100001,读取时遇到 01100001 也会转换为 a。

完整的ASCII码表请查看:http://www.asciima.com/
Unicode编码
随着计算机的流行,使用计算机的人越来越多,不仅限于美国,整个世界都在使用,这个时候ASCII编码的问题就凸现出来了。

ASCII编码只占用1个字节,最多只能表示256个字符,我大中华区10万汉字怎么表示,日语韩语拉丁语怎么表示?所以90年代又制定了一套新的规范,将全世界范围内的字符统一使用一种方式在计算机中表示,这就是Unicode编码,也称统一码、万国码。

Unicode 是一个很大的集合,现在的规模可以容纳100多万个符号,每个符号的编码都不一样。Unicode 规定可以使用多个字节表示一个字符,以解决本地化和跨平台问题。

为了兼容ASCII,Unicode 规定前0~127个字符与ASCII是一样的,不一样的只是128~255的这一段。

完整的Unicode编码请查看:unicode.org

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马