首页 > 编程知识 正文

ieee754尾数舍入时阶码为什么加一,ieee754 移码

时间:2023-05-04 21:38:55 阅读:264767 作者:4518

问题:为什么要阶码真值+127而不是+128呢?

因为8个二进制位能表示指数的取值范围为[-128,127],现在将指数变成移码表示,即将区间[-128,127]正向平移到正数域,区间里的每个数都需要加上128,从而得到阶码范围为[0,255]。

由于计算机规定阶码全为0或全为1两种情况被当作特殊值处理(全0被认为是机器零,全1被认为是无穷大),去除这两个特殊值,阶码的取值范围变成了[1,254]。

如果偏移量不变仍为128的话,则根据换算关系公式[x]阶=X+128得到指数的范围变成[-127,126],指数最大只能取到126,显然会缩小浮点数能表示的取值范围。

所以IEEE754标准规定单精度的阶码偏移量为2^{8-1} -1 (即127),这样能表示的指数范围为[-126,127],指数最大值能取到127

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。