浮点数表示法

 

1.定点数表示法
定点数表示法通常把小数点固定在数值部分的最高位之前, 或把小数点固定 在数值部分的最后。前者用来表示纯小数, 后者用于表示整数。如图3-3所 示。
在计算机中, 图示的小数点 实际上是不表示出来的, 是事先约定好固定 在那里的。对一台计算机来说, 一旦确定了一种小数点的位置, 整个系统就 不再改变。
 
小数点的位置可按需浮动, 这就是浮点数。例如:
N=rE·M
式中, r为浮点数阶码的底, 与尾数的基数相同, 通常r=2。E和M都是带符号的定点数, E叫数N的阶码(Exponent),M为数N的有效数字, 称为尾数(Mantissa)。在大多数计算机中, 尾数为纯小数, 常用原码或补码表示;阶码为纯整数, 常用移码或补码表示。
计算机中, 通常用约定的4部分来表示一个浮点数:其中,Ef 、S分别称为阶码E和尾数M的符号位。
 
IEEE 754标准中有三种形式的浮点数, 格式见表3-1。
短浮点数即单精度浮点数,长浮点数即双精度浮点数, 都采用隐含尾数最高数位的方法, 故增加了一位尾数。临时浮点数又称扩展精度浮点数,无隐含位。
 
短浮点数的移码的偏置值是127(3FH);长浮 点数的偏置值是1023(3FFH)。根据移码 的定义,存储浮点数阶码部分之前,偏置值 要先加到阶码真值上。
注意:隐含的1是一位整数(即位权为20),
在浮点格式中表示出来的23位尾数是纯小数,
用原码表示.(12)10=(1100)2,将它规格化为
1.1× 23,其中整数部分的1将不存储在23
位尾数内.
 
浮点数举例
 
 
将短浮点数C1C90000H转换成十进制数。
解:(1)把十六进制数转换成二进制形式,并分离出符号位、阶码和尾
因为,C1C90000H= 1100 0001 1100 1001 0000 0000 0000 0000B
所以,       符号位=1
                    阶码= 10000011 (用黑体字表示)       8位
                    尾数=10010010000000000000000            23
(2)计算出阶码的真值(即移码-偏置值)
10000011  -1111111=100
(3)以规格化二进制数形式写出此数
1. 1001001×2 4
(4)写成非规格化二进制数形式
11000.001
(5)转换成十进制数,并加上符号位
(11000.001) 2 =(25.125) 10
例3.20: 将(100.25)10转换成短浮点数格式。
解: (1)把十进制数转换成二进制数
(100.25)10 =(1100100.01)2
(2)规格化二进制数     
1100100.01=1.10010001×2 6
(3)计算出阶码的移码(偏置值+阶码真值)
    1111111(127H)+110 =10000101
注意:短浮点数的阶码偏置值是1111111(127H)。
(4)以短浮点数格式存储该数
该数的符号位=0   ,阶码=10000101
            尾数=10010001000000000000000         23位
所以(100.25)10的短浮点数代码为
0;1000010110010001000000000000000
十六进制值是42C88000H
短浮点数:最高位为数符位 ;其后是8位阶码, 以2为底, 用移码表示, 阶码的偏移值为127(叫移127码); 其余23位是尾数的数值位。对规格化的二进制浮点数,约定最高位总是“1”,为使尾数能多表示一位有效值,可将这个“1”隐含, 故尾数数值实际上是24位, 即1位隐含位加23位小数位
按照IEEE754标准,常用的浮点格式如图3-4所示
只能处理定点数的计算机称为 定点计算机 。在这种计算机中机器指令访问的 所有操作数都是 定点数
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值