首页 > 试题广场 >

关于浮点数加减法以下论述正确的是 。

[单选题]

关于浮点数加减法以下论述正确的是


  • 对阶时较小的数进行左移
  • 对阶时小阶向大阶对齐
  • 对阶时大阶向小阶对齐
  • 对阶时较大的数进行左移
答案:小阶向大阶对齐    因为这样计算的结果误差比较小
对阶就是比较参与运算的浮点数的阶码大小,然后使他们的阶码(或移码)都一样,其最终目的是使参与运算的数的小数点位置对齐,以便得出正确的结果。
下面在网上找的一个例子。
示例:X = 20010 * 0.11000101,Y = 20100 * 0.10101110。对这两个浮点数进行加减法运算(尾数的符号位是体现在浮点数的符号位上,阶码和尾数均已采用补码形式表示)。
X的阶码为0010,对应的十进制数位2,Y的阶码为0100,对应的十进制数为4,因此,X的阶码比Y的阶码小,此时应将X的阶码变成与Y的阶码一样,即都调成4,同时需要将X的尾数小数点左移2位(在小数点右边最高位前面加两个0,原来最低的2位被丢弃,这样才能使X的值与原来保持基本不变)。
X原来的尾数为11000101,向右移两位(仍要保持原来的总位数不变,则要在前面补相应位数的0,原来最右边的对应两位丢弃),则变成了00110001,这样一来,X的阶码也变成了0100,最终X在存储器中的格式是0 0100 00110001(原来为0 0010 11000101)。
X对阶后的尾数为00110001,Y的尾数不变,为10101110,两者相加:
 X  00110001
 Y  10101110
结果  11011111





发表于 2019-12-04 16:15:30 回复(0)
小阶向大阶对齐误差比较小
发表于 2018-10-17 00:17:13 回复(0)
b
发表于 2020-03-13 23:52:15 回复(0)
对阶操作是计算两个浮点数的阶码的差值,差值不为零时阶码较小的尾数右移
发表于 2018-04-14 20:39:38 回复(0)