1

我的教授复习了一个练习期末考试题,我们正在使用 IEEE 浮点格式。二进制是 5 位表示,在其中一种情况下,我们使用减零。每个表示具有 1 个符号位、3 个指数位和 1 个小数位。

他将其视为具有 1 0000 的二进制表示,这是我理解的。有效数 M 为 0,我理解这是因为非规范化值具有有效数 M = f = 0,因为分数字段为 0。

但是,他将指数值 E 设为 -3​​。

这个,我不明白。我认为负 0 是非规范化的!我的书说

“当指数域全为零时,表示的数为非规范化形式。在这种情况下,指数值为 E = 1 - Bias,有效数字值为 M = f ,即没有的分数域的值一个隐含的前导 1。”

由于负 0 是非规格化的,因此 E 应该等于 1 - 3(偏差)= -2,对吗?

在我的书中,具有 4 个指数位、3 个小数位和 7 (2^4 -1) 偏差的 IEEE 8 位浮点格式的正 0 的指数值 E 为 -6,这是正确的,因为 E = 1 - 7(偏差),因为它是非规范化的。

为什么在这种情况下有所不同?还是我的教授弄错了?

4

1 回答 1

3

零使用与非正规数相同的指数,并且像它们一样在其表示被解码时没有前导 1 位。如果你愿意,你可以称它为“非正规”,只是要注意其他人可能会在更严格的意义上使用这个词(即考虑 0 和非正规不相交的浮点数类)。

至于-3,在指数的有偏和无偏版本之间转换时,可能是偏差值的错误。不要读太多。重要的是要记住,非正规的指数表示为“所有位为零”,并且是它可以具有的值范围中的最小可能值。

于 2015-03-23T07:02:20.690 回答