计算机组织与结构 (33).ppt
浮点运算方法1.浮点运算加减法乘除法2.浮点加减运算步骤对阶、尾数相加减、规格化、舍入、判溢出。x=Sx 2jxy=Sy 2jy浮点数加减法流程1.“对阶”操作:使尾数加减可以进行。比较两阶码,J=JX-JY 将小阶码数的尾数右移J位,其阶码值加J注意尾数右移特点:原码补0,补码补符号位右移过程中移掉的位可用附加位电路暂时保存浮点数加减法流程1.“对阶”操作:使尾数加减可以进行。比较两阶码,J=JX-JY 将小阶码数的尾数右移J位,其阶码值加J注意尾数右移特点:原码补0,补码补符号位右移过程中移掉的位可用附加位电路暂时保存2.尾数加/减运算 S=SX SY浮点数加减法流程1.“对阶”操作:使尾数加减可以进行。比较两阶码,J=JX-JY 将小阶码数的尾数右移J位,其阶码值加J注意尾数右移特点:原码补0,补码补符号位右移过程中移掉的位可用附加位电路暂时保存2.尾数加/减运算 S=SX SY3.尾数规格化:尽可能提高精度2-1 S原1-2-n2-1 S补 1规格化操作的规则规格化操作的规则:右规:结果的两个符号位不同表示尾数结果溢出,右移1位尾数,阶码J+1。左规:结果的两个符号位相同,如是原码且数值位最高位为0,则左移,如是补码且数值位与符号位相同也需左移。同时阶码减去移动的位数。浮点数加减法流程4.舍入 截断法 恒置1法 0舍1入法浮点数加减法流程4.舍入 截断法 恒置1法 0舍1入法5.判断阶码溢出 阶码下溢,则置运算结果为机器零;阶码上溢,则置溢出标志,报警中断。例题1例:已知X=20010(0.11011011)Y=20100(-0.10101100),求X+Y。例题1例:已知X=20010(0.11011011)Y=20100(-0.10101100),求X+Y。1.对阶操作 J=JX补+-JY补=00010+11100=11110 SX补=00.00 110 110 11 J=00100。例题1例:已知X=20010(0.11011011)Y=20100(-0.10101100),求X+Y。1.对阶操作 J=JX补+-JY补=00010+11100=11110 SX补=00.00 110 110 11 J=00100。2.尾数相加 SX补+SY补 =00.0011011011+11.01010100 =11.10001010 11 例题13.规格化操作 左规,移1位,结果=11.00010101 10;阶码-1,J=00011。例题13.规格化操作 左规,移1位,结果=11.00010101 10;阶码-1,J=00011。4.舍入 S补=11.00010110,S=-0.11101010。例题13.规格化操作 左规,移1位,结果=11.00010101 10;阶码-1,J=00011。4.舍入 S补=11.00010110,S=-0.11101010。5.判溢出 未溢出 最终结果为:X+Y=20011(-0.11101010)pentium处理器浮点除法运算错误1994年6月,在奔腾处理器推出前几天,英特尔发现浮点除法运算会发生偏差,修复代价为几十万美元。90亿次除法可能出现1次错误,每27000年中会遇到一次。弗吉尼亚州的数学教授尼斯利博士发现了该错误。但是英特尔仅仅指出尚没有人发现类似错误,但未肯定是因为奔腾芯片技术问题导致。最后,Intel向公众道歉,并承诺为所有用户无条件 更换处理器,损失为5亿 美金。