深入浅出计算机组成原理学习笔记:第十一讲
一、理解二进制的“逢二进一
1、什么是二进制?
十进制计数使用10作为基础、二进制使用2作为基数、
二进制的数位就是2^n的形式
2、计算机为什么使用二进制?
二进制的数据表达具有抗干扰能力强、可靠性高的优点;
二进制非常适合逻辑运算
3、13这个十进制转化成二进制,需要经历一下几个步骤:
因此,对应的二进制数,就是 1101。
二、二进制中的负数是如何实现
我们就有了另一种表示方法,我们仍然通过最左侧第一位的0和1,来判断这个数的正负,但是,我们不再把这一位当成单独的符号位,在剩下几位计算出的十进制数前加上正负号,
而是在计算整个二进制的时候,在左侧最高位前面加个负号
1、示例
比如一个4位的二进制补码数值1011,转成成十进制就是
如果最高位是 1,这个数必然是负数;最高位是 0,必然是正数。并且,只有 0000 表示 0,1000 在这样的情况下表示-8。一个 4 位的二进制数,
当然更重要的一点是,用补码来表示负数,使得我们的整数相加变得很容易,不需要做任何特殊处理,只是把它当成普通的二进制相加,就能得到正确的结果
2、-5+4 = -1过程解析
3、-5+6 = 1 过程解析
三、字符串的表示,从编码到数字
1、什么是ASCII 码
最早计算机只需要使用英文字符,加上数字和一些特殊符号,然后用位二进制,就能表示我们日常需要的所有字符了这个就是我们常说的
ASCII 码(American Standard Code for Information Interchange,美国信息交换标准代码).
2、数字和字符在ASCII中的表示
3、ASCII码的缺点
1、为什么很多时候我们在存储诗句的时候,要采用二进制序列化这样的方式,而不是简单地把数据同CVS或者JSON,这样的文本格式存储来进行序列化
不管是整数也好,浮点数也好,采用二进制序列化会比存储文本省下不少空间
四、字符集和字符编码
1、字符集
2、字符集编码
五、手持两把锟斤拷、口中疾呼烫烫烫
1、锟斤拷
2、烫烫烫
了解了这些原理,相信你未来在遇到中文的编码问题的时候,可以做到“手中有粮,心中不慌”了。
作者:罗阿红
出处:http://www.cnblogs.com/luoahong/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。