浮点数 - 最接近1.7的数字

5
我正在为一些考试做准备,过去的一道题目是给定一个虚拟浮点格式,该格式总共有8位(1位用于符号,3位用于指数,4位用于有效数字),要找到最接近1.7的数字。
无论如何,我写下了1.1011,因为我可以使用四个有效数字,而IEEE标准中的1是隐含的。然而,将指数设为000会使其成为非规格化数。这是否意味着浮点数中的值1.7应该是1.1100?
谢谢
2个回答

3

提问者发布了一个回答,但被版主删除。我已经标记它以引起注意,但我也会在这里添加一些注释。

关键在于IEEE-754风格的浮点格式使用“偏置”(也称为“超额-n”)整数格式存储指数。有3个指数位,所以偏差为3,因此可编码指数的集合为:

encoding    meaning
  000       exponent for zeros and denormals
  001       2^-2
  010       2^-1
  011       2^0
  100       2^1
  101       2^2
  110       2^3
  111       exponent for infinities and NaNs

因此,问题者所给的值1.7将具有指数字段3 (b011)和有效数字字段b1011,这使得完整的值为b00111011

2

哦,我完全忘记了指数偏置,如果有人好奇浮点数的指数将具有偏置3,因此将其设置为3将给我2^0。


SO与通常的论坛非常不同。如果您有要添加到问题中的内容,请编辑它。此空间仅用于回答。如果您对自己的问题有答案,请在此发布。 - user616736
只是为了明确,这看起来像是一个注释,但实际上确实构成了对问题的回答。感谢管理员们将它恢复。 - Stephen Canon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接