0

在此处输入图像描述

这是 1996 年提出的相当古老的问题,因此请忽略错误。

这里的指数是 8 位,那么我们将偏置为 128 对吗?但如何进一步解决问题,请帮忙。

4

2 回答 2

1

可能预期的答案是 D,但这个问题提出得不好。

首先,在“0.5[含]~1[不含]”的可表示数与“0.5[含]~( 1-2-23 )[含]的可表示数相同的意义上,B和D是等价的答案。 ” 用端点来描述间隔而不指定它们是包含还是排除是模棱两可的。

鉴于作者没有具体说明这一点,我的感觉是他们打算将间隔包括两个端点,这使得 D 成为预期的答案。这仅基于我对各种人类行为和思维普遍性的感觉,而不是基于问题的任何数学或逻辑要求。

其次,由于浮点表示的性质,“此表示中归一化数的大小范围”必须跨越某个区间 [ x , 2 x ]。(这里我们将“幅度”理解为有效数字1的值,与符号或指数分开。)这是因为有效数字是浮点基数中固定长度的数字,在这种情况下为 2。当有效数字被归一化时,它的前导数字是非零的。因此,忽略小数点,归一化以二为底的有效数字的数字范围可以从 1000…000 2到 1111…111 2. 每个浮点格式都固定了这个有效数字中小数点的位置,但是,无论它是固定的,它都会给第一个端点一些值x和第二个端点一些值,刚好低于 2 x。因此,归一化二进制有效数总是跨越某个区间 [ x , 2 x ]。答案 A 和 C 不符合这一点,因此它们不可能是正确的。

尽管这允许我们将选择范围缩小到 B 和 D,但对于初始浮点课程中的简单复习问题来说,这是过多的推理。该问题应该说明如何解释“尾数”字段的位。虽然它声明它们是“the”符号幅度表示,但它们不是二进制数字,因为这将给出从 -2 23到 +2 23 -1 (包括)的值。因此,为小数点选择了其他位置。[½, 1) 的区间(对于幅度,忽略符号)和 [1, 2) 是常见的,但可以使用[ x , 2 x ) 的任意区间。IEEE-754 名义上使用指数偏差为 127 的 [1, 2),但它可以很容易地使用 [2 −127 , 2−126 ) 并说指数偏差为零!这对规范没有影响:它会改变措辞,但不会影响数学、实现要求或行为。所以我们看到位如何表示有效数字在很大程度上是任意的,并且问题未能指定表示。

脚注

1 “有效位”是浮点数小数部分(相对于指数或符号)的首选术语。“尾数”是对数小数部分的旧术语。尾数是对数的;添加到尾数乘以表示的数字。有效数字是线性的;乘以有效数字乘以表示的数字。

于 2020-06-09T20:12:20.187 回答
0
  • 为什么它在 1996 年呈现非 IEEE-754 格式,在该标准被批准和大量采用之后很久。
  • 隐式小数点在哪里?(我指出 Burroughs 5000 是个怪人。)
  • 在第 23 位中有符号位是不寻常的。
  • 可能的答案似乎并不关心指数。
  • 即使提供了缺少的规范,我也不认为任何答案都是正确的。
于 2020-06-09T18:46:01.847 回答