当前位置:文档之家› 计算机原理(岳乡成)补码加减法运算(公开课)

计算机原理(岳乡成)补码加减法运算(公开课)


范围,计算结果错误,就是所谓的溢出。
如何判断两个数在补码运算中是否会产生溢出: 判断的方法:双进位溢出判断法。 说明:使用这方法,要引入两个符号cs和cs+1,cs用来表示参加运算 的两个有符号数中数值位的最高位是否有向符号位进位的情况,有 进位,则cs=1,否则cs=0。Cs+1用来表示符号位是否有向更高位进位 的情况,有进位,则cs+1=1,否则cs+1=0。通过判断cs与cs+1的状态来 判断是否产生溢出,如果cs与cs+1相同(即cs与cs+1同时为0,或同时 为1),则不产生溢出;如果cs与cs+1相异(即cs和cs+1一个为0,一个 为1),则产生溢出。
计算机组成原理
9
计算机组成原理
3
2.补码减法
补码减法运算的规则:
[ x -y ]补=[ x ]补-[ y ]补=[ x ]补+[-y ]补(mod 2n)
两数差的补码等于两数补码之差
减法运算化为加法完成。关键是求[-Y]补
计算机组成原理
4
例: 解:
x= -0.1101,y= -0.0110,求x-y=? [x]补=1.0011 + [y]补=1.1010 [-y]补=0.0110
计算机组成原理
第三章复习1 补码加减法运算及溢 出的判断
计算机组成原理
1
1.补码加法运算 补码加法的规则: [ x ] 补+[ y ] 补=[ x +y ] 补
(mod 2n)
任意两数的补码之和等于该两数之和的补码,这是补码加法的理论基础。
补码加法的特点: (1)符号位要作为数的一部分一起参加运算; (2)在模2的意义下相加,即符号位之前多出的位为模,做丢失处理。
(1)x=49,y=18,求x-y。 (2)x=0.1011011, y=0.0101010, 求 x-y。 (3)x=74,y=-65,求x-y。 (4)x=-25,y=-41,求x+y。
计算机组成原理
8
课后作业: 已知机器的字长为8位,对下列各小题进行补码加法用算。 (1)x=60,y=-25,求x+y。 (2)x=-64, y=-52, 求 x+y。 已知机器的字长为8位,对下列各小题进行补码加法用算。 (1)x=89,y=-57,求x-y。 (2)x=-25,y=-41,求x-y。
[x]补 [-y]补 [x-y]补
1.0 0 1 1 0.0 1 1 0 1.1 0 0 1
∵cs=0 cs+1=0 ∴不产生溢出,结果正确。 [x-y]原=[[x-y]补]补=1.0111 x -y = - 0.0111
计算机组成原理
5
3.溢出 产生溢出的原因: 定点整数、定点小数进行补码运算时,若结果的数值超过了补码表示的
计算机组成原理 6
课堂练习1:
已知机器的字长为8位,对下列各小题进行补码加法用算。
(1)x=35,y=23,求x+y。 (2)x=0.1001001,
y=0.0101010, 求 x+y。
(3)x=29,y=-67,求x+y。 (4)x=-50,y=-101,求x+的字长为8位,对下列各小题进行补码减法法用算。
其结论适用于定点整数、定点小数。
计算机组成原理
2
例: x=+0.1011, 解:
y=-0.0101, 求 x+y。
[y]补=1.1011 [x]补 +[ y ] 补 [ x +y ] 补 0. 1 0 1 1 1. 1 0 1 1 1 0. 0 1 1 0
[x]补=0.1011,
∵cs=1 cs+1=1 ∴无溢出产生,结果正确。 [x+y]原=[x+y]补=0.0110 x+y=0.0110
相关主题