首页 > 试题广场 >

浮点数的尾数基值取2,并采用隐含位表数方法,则这种浮点数的表

[单选题]
浮点数的尾数基值取2,并采用隐含位表数方法,则这种浮点数的表数效率为()
  • 50%
  • 94%
  • 100%
  • 75%
推荐
所以答案为A
编辑于 2015-10-29 17:27:03 回复(14)
完全不会做,猜了A
发表于 2016-08-01 16:38:20 回复(0)
http://202.197.191.206:8080/22/content/chap2/section1/left06.htm
另外,我觉得隐含位和表数效率没有关系,表数效率只和基有关。
不知道对不对。
编辑于 2016-03-01 20:46:07 回复(2)
我认为答案错了,正确答案应该是C,因为采用了隐含位表数方法,效率是100%。根据效率公式:效率=(尾数基值-1)/尾数基值,以2为尾数基值的浮点数表数效率应该是1/2,但是题目提到采用隐含位的表数方法,具体做法是:
在尾数基值rm=2时,规格化浮点数尾数的最高位一定是1(如果尾数用补码表示,规格化浮点数尾数最高位一定与尾数符号位相反),所以,浮点数在存储和传送的过程中,尾数最高位可以不表示出来,只在计算时恢复这一个隐藏位,或采用某种方法对运算结果进行修正。在采用采用隐藏位表示方法之后,当取尾数基值rm=2时,浮点数的表示数的效率能够达到最大值100%,而且节省了一个二进制。

发表于 2016-10-15 10:45:33 回复(1)
3 表数效率
通常把尾数最高位为非0的浮点数称为规格化浮点数,只有一个特例,就是机器0,机器0的尾数和阶码都是0,但它也是一个规格化浮点数。
由于在同一种浮点数表示方式中,规格化浮点数具有最长的尾数有效位数,即能够保证尾数的绝对值为最大,当尾数用小数表示时,其绝对值在1/ 到1之间,所以,规格化浮点数的表数精度是最高的。
在采用浮点数表示方式的计算机中,一般规定存放在存储部件中的浮点数,进入运算部件的浮点数,从运算部件中输出的浮点数都必须是规格化浮点数,只有在运算过程中才可能出现非规格化的浮点数。
在浮点数运算过程中,当出现非规格化浮点数时,必须通过左规格化或右规格化操作来把它变换成规格化浮点数。如果尾数采用小数表示,当出现尾数绝对值小于  (尾数的最高位为0)时,要把尾数左移,每次左移  个二进制位,同时把阶码减1,直到尾数的绝对值大于  时为止,当出现尾数绝对值大于1时,要把尾数右移,每次左移  个二进制位,同时把阶码加1,直到尾数的绝对值小于1时为止。
由于浮点数表示方式中有可能出现非规格化浮点数,因此,浮点数制是一种冗余数制(Redundant Number System),这一点,与数学中的实数是不同的。
为了提高数据的信息利用率,总是希望非规格化浮点数的个数尽可能少,为此,必须研究浮点数表示方式的表数效率问题。 
浮点数表示方式的表数效率定义为:

 

分子中,第一个2表示尾数的正、负数各半,( -1)表示尾数最高位的编码种数,这里去掉了一个0,  表示尾数除最高位之外其它位的编码种数,第二个2表示由于阶码的符号位使编码种数增加一倍,  表示阶码的所有编码种数,分子中的最后一个1表示机器0,因为机器0也属于规格化浮点数;分母中,第一个2表示尾数的正、负数各半,  表示尾数的全部编码种数,第二个2表示由于阶码的符号位使编码种数增加一倍,  表示阶码的所有编码种数。
      上式经过化简,并忽略掉机器0,有:
(2.9)
从(2.9)中看出,浮点数的表数效率主要与尾数的基值有关。
当尾数基值为2时,浮点数的表数效率为:
 
因此,尾数基值取2时,浮点数的信息利用率很低。这时,只有尾数最高一个二进制位为1的浮点数是规格化浮点数,尾数最高一个二进制位为0的浮点数是非规格化浮点数。
当尾数基值 >2时,浮点数的表数效率与尾数基值 =2时相比提高的倍数可计算如下:
 
变化范围在1与2之间,并且随着 的增大,这个比值就越接近2。
例如,当尾数基值 =16时,浮点数的表数效率为:
发表于 2017-03-11 16:10:48 回复(0)
正确答案不是C吗,100%
编辑于 2018-04-10 22:11:28 回复(0)
(r(m)-1)/r(m)
发表于 2017-03-10 19:24:04 回复(0)
参考:
http://202.197.191.206:8080/22/

发表于 2016-08-15 22:41:59 回复(1)
浮点数的尾数基值去2?是说“基数为2”的意思么?还是怎么?不理解。。求大神解释
发表于 2016-03-17 15:18:01 回复(1)