0

我有一个关于浮点的问题。问题:给定一个具有一个符号位、8 个指数位和 23 个小数位的浮点格式。可以精确表示的最大奇数浮点数是多少?

我不确定,但我认为它 = 2^(尾数位 + 1) - 1

希望有人可以帮助我解决这个问题。

4

1 回答 1

0

为了澄清术语,IEEE-754 基本 32 位二进制浮点格式的有效位数为 24。23 是用于编码大部分有效位数的字段中的位数。附加位通过指数字段进行编码。数学有效数的位数为 24。

因此,有效数可以具有的最大值,当缩放以使其低位表示 2 0时,是 2 24 -1。这当然很奇怪。如果将指数设置为更高的数字,则它没有表示奇数的位,因此表示的数字必然是偶数。如果指数设置为缩小数字,则它不能像 2 24 -1 一样大。因此,2 24 -1 是 IEEE-754 基本 32 位二进制浮点格式中可表示的最大奇数。

一般来说,如果浮点格式使用以b为底,具有p个以b为底的数字,并且具有E的最大指数,使得最大可表示值为 ( b p -1) × b E,则:

  • 如果b是奇数,则可表示的最大奇数为 ( b p -2) × b E
  • 如果b是偶数,则可表示的最大奇数为 ( b p -1) × b 0 = b p -1。

(受制于正常特征,例如E为正且p至少为 1。)

于 2018-05-13T17:12:01.910 回答