设浮点数的格式为:阶码 5 位,尾数 6 位,均用补码表示,请计算 X+Y 和 X-Y。(阶码和尾数均用补码计算)。【**,★,包捷 4.8,编号 2.3】 X=-1.625,Y=5.25
正确答案:1)方法一:(双符号法)
X.-1.625=-1.101B=-0.1101*21
[X]浮=00,000111.00110
Y.5.25=101.01B=0.10101*211
[Y]浮=00,001100.10101
计算X+Y:
对阶
[X]阶<[Y]阶,X向Y对齐。X尾数右移2位,X阶码+2
[X]浮=00,001111.11001(10)
尾数相加
[X]尾+[Y]尾=11.11001(10)+00.10101=00.01110(10)(mod4)
结果规格化:双符号00,无溢出。但有一个前导0,需要左规1位:尾数左移1位,阶码-1
[X+Y]尾=00.11101(0)
[X+Y]阶=00,0011-1=00,0011+(100,0000-1)=00,0011+11,1111=00,0010(无溢出)
舍入
[X+Y]浮=0,00100.11101//舍去0
计算X-Y:
对阶
[X]阶<[Y]阶,X向Y对齐。X尾数右移2位,X阶码+2
[X]浮=00,001111.11001(10)
尾数相减
[X]尾-[Y]尾=11.11001(10)+(100.00000-00.10101)=11.11001+11.01011=11.00100(10)
结果规格化:双符号11,无溢出。结果已规格化
舍入:入1
[X-Y]浮=0,00111.00101
X.-1.625=-1.101B=-0.1101*21
[X]浮=00,000111.00110
Y.5.25=101.01B=0.10101*211
[Y]浮=00,001100.10101
计算X+Y:
对阶
[X]阶<[Y]阶,X向Y对齐。X尾数右移2位,X阶码+2
[X]浮=00,001111.11001(10)
尾数相加
[X]尾+[Y]尾=11.11001(10)+00.10101=00.01110(10)(mod4)
结果规格化:双符号00,无溢出。但有一个前导0,需要左规1位:尾数左移1位,阶码-1
[X+Y]尾=00.11101(0)
[X+Y]阶=00,0011-1=00,0011+(100,0000-1)=00,0011+11,1111=00,0010(无溢出)
舍入
[X+Y]浮=0,00100.11101//舍去0
计算X-Y:
对阶
[X]阶<[Y]阶,X向Y对齐。X尾数右移2位,X阶码+2
[X]浮=00,001111.11001(10)
尾数相减
[X]尾-[Y]尾=11.11001(10)+(100.00000-00.10101)=11.11001+11.01011=11.00100(10)
结果规格化:双符号11,无溢出。结果已规格化
舍入:入1
[X-Y]浮=0,00111.00101
答案解析:有
微信扫一扫手机做题