例:x=0.1001,y=0.0101,求x+y 解:x补=0.1001,v补=0.0101 0.1001所以x+y=+0.1110 + 0.0101 x+y补 0.1110 例:x=+0.1011,y=-0.0101,求x+y 解:x1补=0.1011,四补=11011 补 0.1011 Uy补 1011 x+yl10.0110 所以x+y=0.0110 计算机组成原理
计算机组成原理 11 例: x=0.1001, y=0.0101, 求 x+y。 解: [x]补=0.1001, [y]补=0.0101 [x]补 0.1001 + [y]补 0.0101 [x+y ]补 0.1110 所以 x+y=+0.1110 例: x=+0.1011, y=-0.0101, 求 x+y。 所以 x+y=0.0110 解: [x]补=0.1011, [y]补=1.1011 [x]补 0.1011 +[y]补 1.1011 [x+y]补 10.0110
钋码减法 补码减法运算的公式: Ix-yl补=[x补一[y1补=[x1补+一y补 公式证明:只要证明y补=-y补,上式即得证。 证明: x+yl补=x补+[y补(mod2) 令 01补=x补+[一x补 故一xl补=一【x补(mod2) 减法运算要设法化为加法完成 计算机组成原理 12
计算机组成原理 12 补码减法 减法运算要设法化为加法完成 补码减法运算的公式: [ x-y ]补=[ x ]补-[ y ]补=[ x ]补+[-y ]补 公式证明: 只要证明[–y]补=–[ y]补, 上式即得证。 ∵ [x+y]补=[x]补+[ y]补 (mod 2) 令 y= - x ∴ [0]补 =[x]补 + [ - x]补 故 [-x]补=-[ x]补 (mod 2) 证明:
例:x=+0.101,y=+0.011,求x-y 解:四x补=0.10 yl补=0.0110,-y补=1.1010 0.1101 x-y=+0.011l [-y补 1.1010 x=y补10.0I 例:x=-0.1101,y=-0.0110,求x-y=? 解:|x=1.001 y补=1.1010y补=0.0110 x补1.0011 0.0110 y=-0.0111 补 x-y]补1.1001 计算机组成原理 13
计算机组成原理 13 例: x=+0.1101, y=+0.0110, 求 x-y。 解: [x]补=0.1101 [ y]补=0.0110, [-y]补=1.1010 [x]补 0.1101 +[-y]补 1.1010 [x-y]补 10.0111 x-y=+0.0111 解: [x]补=1.0011 [y]补=1.1010 [-y]补=0.0110 [x]补 1.0 0 1 1 + [-y]补 0.0 1 1 0 [x-y]补 1.1 0 0 1 例: x= -0.1101,y= -0.0110,求x-y=? ∴x--y = -0.0111
溢出及与检测方法 1.概念 在定点小数机器中数的表示范围为x<1。在运算过程中 如出现大于1的现象,称为“溢出”。 下溢负溢出 正溢出上溢 负小数正小数 +1 机器定点小数表示 计算机组成原理 14
计算机组成原理 14 溢出及与检测方法 在定点小数机器中,数的表示范围为|x|<1。在运算过程中 如出现大于1的现象,称为 “溢出” 。 机器定点小数表示 下溢 上溢 1. 概念
例:x=+0.1011,y=+0.1001,求x+y 解:(x1补=0.1011y1=0.1001 补0.1011 +INl0.1001 x+y11.0100 两个正数相加的结果成为负数,这显然是错误的。 例:x=-0.1101,y=-0.1011,求x+y。 解 x补=1.0011 Iy补=1.0101 补 补 1.0011 1.0101 x+yl补0.1000 两个负数相加的结果成为正数,这同样是错误的。 计算机组成原理 15
计算机组成原理 15 解: [x]补=0.1011 [y]补=0.1001 [x]补 0. 1 0 1 1 + [y]补 0. 1 0 0 1 [x+y]补 1. 0 1 0 0 两个正数相加的结果成为负数,这显然是错误的。 例: x=+0.1011, y=+0.1001, 求x+y。 例: x= -0.1101, y= -0.1011, 求x+y。 解: [x]补=1.0011 [y]补=1.0101 [x]补 1. 0 0 1 1 + [y]补 1. 0 1 0 1 [x+y]补 0. 1 0 0 0 两个负数相加的结果成为正数,这同样是错误的