【计算机组成原理】定点数的表示



定点表示

机器数中的小数点位置是固定不变的,小数点不再使用“.”表示,而是约定它的位置。小数点:隐含存储(定点数:事先约定;浮点数:按规则浮动)

这里有两种简单的约定,将小数点的位置固定在数据的最高位之前,或固定在最低位之后。一般称前者为定点小数后者为定点整数。

定点小数

+0.75 = 0.11B 存储为011

-0.75 = 1.11B 存储为111

TIPS:小数点后面两位 绝对值0.00 ~0.11 = 1-0.01(不明白)

n位的 无符号整数的表示范围的两种思路

(1)递推 然后求和,结果是等比数列求和

备注:真值 是带符号的数字如:+1 、-1

 (2)逻辑推导,8位二进制,最高大数是1111 1111 +1=1  0000 0000 =28-1。

因此n位无符号整数的表示范围:0~2n-1

有符号数的顶点表示法

 将一个浮点数用定点表示保存 例如19.75

必须将整数的19和小数的0.75分开保存

原码和反码取值范围

定点整数的取值范围

 若机器字长n+1位,原码整数的表示范围:-(2n-1)≤x≤2n-1(关于原点对称)
真值表示范围:-(2n+1-1)≤x≤2n+1-1 

定点小数数的取值范围

 若机器字长n+1位,原码小数的表示范围:-(1-2-n)≤x≤1-2-n(等比求和公式 计算得出)。

原码小数的取值范围:符号位为0的时候最大1-2-n,符号位为1的时候最小-(1-2-n)

补码取值范围(考点)

定点整数补码[x]= 1,0000000表示x=-2字长-1。定点小数补码[x]=1.00000表示x=-1

原码和补码的转化

整数补码是它本身

负整数和负小数的补码都是符号位不变,其他位置取反 再加1,补码转原码过程一样。

移码

移码:补码的基础上将符号位取反。注意:移码只能用于表示整数

移动和补码是一一对应的,所以取值范围是一样的

作用:用于判断大小,谁先出现1谁就大

 

移码作用

用于判断大小,谁先出现1谁就大

 

 练习

练习题1

 练习题2

2种[x]转向[-x]方法

(1)[x]符号位、数值位全部取反,末位+1

(2)[x]=>[x]=>[-x]补:2次和正常的求补。

 练习题3