-2

参考位串 010011110110

We also assume that when the number is stored as a floating point (real) number, 6 of the 12 bits are reserved for the mantissa (or significand)

If the string represents a floating point number, what is this (smallest) number?

Find the range (or interval) of floating point numbers that could be represented by the same string.

value=(-1)^s (1+m/26 )^{e-24} is what I think I need in order to solve one of the, 

这是我要在 28 日星期四进行评估的最后两个问题,我已经完成了所有其他问题,此时我不知道其中是否有任何问题是正确的,我只是被困在这些问题上。我不知道为什么我必须作为网络专业的学生上一门计算机科学课,但这让我很生气。

4

2 回答 2

0

6 of the 12 bits are reserved for the mantissavalue=(-1)^s (1+m/26 )^{e-24}

第二个在逻辑上应该是 value=(-1)^s (1+m/2^6 )^{e-2^4}

所以让我们开始吧:

  • 1位符号s
  • 1 隐含前导 1 + 6 位 m(=0 到:63)用于有效位(共 7 位)
  • 指数剩余 5 位(e=0 到 31)

所以最大有效值为,1+63/64127/64,(2^7-1)/2^62-2^-6

最大指数为31-16=15

所以最大数量是(2-2^-6)*2^15=2^16-2^9=65536-512=65024

最小值为 -65024。

编辑

现在,我不确定我是否完全理解相同字符串的问题......

如果问题是哪个区间将四舍五入到相同的浮点数,那么

  • 这取决于舍入方法
  • 它取决于指数

如果我们假设数字四舍五入到最接近的浮点数,则区间中的每个数字(f-ulp(f)/2,f+ulp(f)/2)都将四舍五入到相同的浮点数 f。

如果 f=(-1)^s*(1+m/2^6)*2^(e-2^4),则 ulp(f) 为 2^(e-2^4-6),所以你明白了。包含区间边界取决于详细的舍入方法(舍入到最接近的偶数)。

对于最小正值,我不知道...

  • 最小的指数都保留用于表示非正规数和零。
  • 或者这个表示中可能没有零......

在第一种情况下,对于非正规化,最小指数为1-16=-15,最小正值为2^-6*2^-15 = 2^-21

在第二种情况下,最小指数为0-16=-16,最小正值为1*2^-16

第三种情况,如果只有零是特例,并且没有非规范化,则最小值为(1+2^-6)*2^-16

于 2013-03-26T20:35:07.373 回答
0

由于基数为 2,尾数为 6,并假设精度为 12 位,根据浮点数的维基百科,我相信范围为 100000 * 2^011111 到 011111 * 2^011111 或更确切地说是 -32*2^31到 31*2^31,其中最小值是 1*2^100000 或者更确切地说是 1*2^-32。

于 2013-03-25T22:57:46.937 回答