字符 编码

1、字符编码很重要,需要搞懂
 

可以说是计算机技术的基石,打不好基石,就不能学好计算机。

2、为什么要有字符编码

我们知道,对于计算机而言,信息是以二进制(0和1)的形式来存储和传输的.他并不认识我们人类创造的文字、图片等等。

思考一下:为什么计算机只认识0和1?  《编码 隐匿在计算机软硬件背后的语言》


所以我们需要一种办法,来将人类认识的文字转换成计算机认识的二进制。这种办法就是字符编码。

我们知道,所有的信息最终都表示为一个二进制的字符串,每一个二进制位(bit)有0和1两种状态。如果我们想要把数字 2 放到内存里,我们可以很容易地做到,因为数字很容易表现成二进制。当我们想把字符'A'存入计算机时,应该对应哪种状态呢,存储时,我们可以将字符'A'01000010(这个随便编的)二进制字符串表示,存入计算机;读取时,再将01000010还原成字符'A'。那么问题来了,存储时,字符'A'应该对应哪一串二进制数呢,是01000010?或者是10000000 11110101?说白了,就是需要一个规则。这个规则可以将字符映射到唯一一种状态(二进制字符串),这就是编码。而最早出现的编码规则就是ASCII编码,在ASCII编码规则中,字符'A'既不对应01000010,也不对应1000 0000 11110101,而是对应01000001(不要问为什么,这是规则)。

ASCII

ASCII(American Standard Code for Information Interchange:美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。

这套编码规则是由美国定制,一共规定了128个字符的编码,比如空格"SPACE"32(十进制)(二进制00100000),大写的字母A65(二进制01000001)。这128个符号(包括32个不能打印出来的控制符号),只占用了一个字节(8 bit)的后面7位,最前面的1位统一规定为0。总共才有128个字符编码,一个字节都没有用完,这好像似乎有点太少了。于是乎,就开始压榨最高位,对其为1时也进行编码,利用最高位进行编码的方式就称为非ASCII编码,如ISO-8859-1编码。

猜你喜欢

转载自blog.csdn.net/fanren224/article/details/88956388