6

我已经收到了这两个问题,但我无法正确地解决浮点问题,所以如果有人能提供一些关于我应该如何解决这些问题的建议,我将不胜感激。

  1. 可以用 10 位尾数和 6 位指数的 2s 补码归一化浮点表示法表示的最小和最大数是多少?

  2. 对于上述尾数和指数,最接近 0 的两个值是多少?想想下溢和溢出发生在哪里。

4

3 回答 3

2

(我会将其添加为评论,但在某些时候我失去了评论的能力。也许在某些时候声誉会以某种方式下降。)

确保区分“最小数”的含义和“最大负数”的含义。这些是不同的,您可能会根据您在作业中回答这个问题的方式而失去学分。鉴于第二个问题要求以这种格式表示的最小数字,我认为第一个问题实际上应该要求最大负数(离零最远的负数 - 幅度最大的负数)。

如之前的答案所述,我建议您手动解决这些问题。

问问自己:符号、指数和尾数的哪种组合会产生最大/最小的数字?如果你知道如何从二进制转换为十进制,我想你应该可以轻松解决这个问题。如果您不知道,那么我建议您从那里开始并逐步提高。

于 2011-06-26T09:59:11.047 回答
1

也许你应该看看这些页面:1 , 2 , 3 , 4 , 5 , 6 , 7

我希望这会有所帮助,而不仅仅是直接给出答案。:)

顺便提一句。你试过手工计算吗?

于 2011-06-26T09:42:04.183 回答
1

如果您谈论的是 IEE754 变体,您可以查看Wikipedia IEEE754-1985并自己计算完全标准化的数字,给定分数和指数的不同大小。

现在忘记这个标志,这只是一个简单的位翻转。

最大的分数都是一位,对于十位尾数,是:

      1   1   1    1    1    1    1     1     1      1
  1 + - + - + - + -- + -- + -- + --- + --- + --- + ----
      2   4   8   16   32   64   128   256   512   1024

= 1024 + 512 + 256 + 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1
  -----------------------------------------------------
                           1024

(隐式1 加十位不断减半的分数)。那就是2047/1024

关于指数,6 位指数的最高非特殊值(特殊值如NaNor ±Inf)是 2 6 -2 或 62(范围是 0 到 62)。

但是,因为您需要正指数和负指数,所以减去 31(偏差,最大非特殊值的一半)。这为您提供了 -30 到 31 的范围(-31 可以在此处打折,因为它没有标准化)。

所以最大和最小(最负)的值是or 。±(2047/1024)x231±4292870144

类似地,最接近零的两个值具有 -30 的指数字段(最小归一化)和全零的尾数字段,通过隐式1,给您1

这些值为或。±(1)x2-30±0.000000000931322574615478515625

你应该打印出那个维基百科页面和这个答案,然后坐下来,直到你理解它们。我不介意在这里帮助您,但是,如果您在作业中重复我的答案,您几乎肯定会被抓住(如果您的教育工作者有任何智慧,尽管不能保证这一点)。

为了把这个答案用你自己的话来表达(因此不会被抄袭),你必须理解它。

于 2011-06-26T11:37:40.077 回答