计算机组成与体系结构——数据的表示
在软考要求中,数据的表示分为以下三个部分:进制的转换、原码反码补码与浮点数的运算,下面,根据每块知识点进行总结。
进制的转换
1、在我们进制的转换中,最基本的是将R进制转换为十进制,其要求就是 将R进制中的所有数都用来表示,即底数为R,指数为k,而k的值与距离小数点的距离有关。当数值在小数点的左边时,k的值是数与小数点之间的数字的个数;当数值位于小数点右边时,k的值是负的,其数值为-(数与小数点之间的数字的个数+1)。
举两个例子:
将二进制101100.01转换为十进制:
将七进制604.02抓换为十进制:
其次,也应该知道如何将十进制转换为任意进制,就是运用短除法,例如将82转换成二进制数:
得到的结果为1010010
2、除了与十进制的相互转化,为了计算方便,二进制、八进制与十六进制之间的相互转化也是很重要的。
首先,我们需要知道,每三个二进制位对应一个八进制位,每四个二进制位对应一个十六进制位,例如将二进制10001110分别转换成八进制和十六进制。
(在十六进制中,因为存在两位数,所以用字母表示,其中,A代表10,B代表11,以此类推)。
而十六进制与八进制的相互转换,是需要通过二进制作为桥梁进行转化的,即先将十六进制/八进制转换成二进制,再转换成八进制/十六进制。.
原码反码补码
以前就写过,现在又完善了一下,链接在这里:https://www.cnblogs.com/yandashan666/p/9753563.html
浮点数的运算
浮点数的表示:其中,M称为尾数,e是指数,R为基数
运算原则为:对阶(将指数化成相同的形式,从低阶向高阶对)尾数计算结果格式化(将结果化成尾数小数点左边只能有一个数字的形式)
做一个例子:将和进行运算,按照上面的步骤
结果为: