计算机系统与设计:原码补码除法运算

一、原码除法:加减交替法(不恢复余数法)

1.1 运算规则

① 符号位异或运算
② 被除数X ,除数Y均取绝对值的补码,且取双符号位
③ 被除数X初始值为 [ | X | ],第一步运算用[ | X | ]减去[ | Y | ],即加[ -| Y | ]
④ 运算加减时,遵循的规则

● 当余数为正时,表示够减(商上1)且在进行下一次商时,将余数左移一位,减去除数(+ [ - | Y | ]
● 当余数为负时,表示不够减(商上0)且在进行下一次商时,将余数左移一位,加上除数(+ [ | Y | ]

5.操作的步数n ,是由要求的n位商决定的,如果第n步 余数为负,则需增加一步恢复余数,即 + [ | Y | ] ,增加的这一步不移位

1.2 例题

在这里插入图片描述

二、补码除法:加减交替法

2.1 运算规则

① 被除数与除数同号,被除数减去除数;被除数与除数异号,被除数加上除数
② 余数和除数同号,商为1,余数左移一位,下次减除数;余数和除数异号,商为0,余数左移一位,下次加除数。
③ 重复步骤2,包括符号在内,工作n+1步

为了统一并简化控制线路,一开始就根据[x]和[y]的符号位是否相同上一次商q0。这位商q0不是真正的商的符号,故称其为假商(假商在最后的运算结果中是要去掉的)。如果[x]和[y]的符号位相同,商1,正好控制下次做减法:第一次一定不够减,才得到商的正确符号位q0=0;如果[x]和[y]的符号位不同,商0,正好控制下次做加法:第一次一定不够减,才得到商的正确符号位q0=1
显然,第一次商的假商q0只是为了除法做准备工作,共进行n+1次操作。最后,第一上的假商q0需要移除寄存器,而需要的位商数则保留在商数寄存器中。

2.2 例题

在这里插入图片描述

三、两种除法对比总结

在这里插入图片描述

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值