单选题
浮点数加/减运算过程一般包括对阶、尾数运算、规格化、舍入和判断溢出等步骤。设浮点数的阶码和尾数均采用补码表示,且位数分别为5位和7位(均含两位符号位)。若有两个数,即x=2
7×29/32,y=2
5×5/8,则用浮点数加法计算x+y的最终结果是______。
- A.00111 1100010
- B.00111 0100010
- C.01000 0010001
- D.发生溢出
【正确答案】
D
【答案解析】[解析] 首先,可将x、y分别记为00,111;00.11101和00,101;00.10100,然后根据浮点数的加法步骤进行计算。
第一步:对阶。x、y阶码相减,即00,111-00,101=00,111+11,011=00,010,当然这里就不用计算了,从题目给出的条件也可以看出,x的阶码比y的阶码大2。根据小阶向大阶看齐的原则,将y的阶码加2,尾数右移2位,即y变成00,111;00.00101。
第二步:尾数相加,即00.11101+00.00101=01.00010,尾数相加结果符号位为01,故需进行右规。
第三步:规格化。将尾数右移1位,阶码加1,得x+y为01,000;00.10001,阶码符号位为01,说明发生溢出,且为正溢出。