一. Booth算法
如果是0, 就右移
如果是1,就是加上[x]补,然后右移
如果是-1,就是加上[-x]补,然后右移
第三列是y(i+1),一开始我们设为0
注:最后一步不移位
注:补码的运算都是算术移位(带符号)
二.原码的除法
除法的商都是 从右往左 写,但是最后答案就是从左往右
1. 恢复余数法
因为除法是利用减法实现的,涉及到符号,所以我们使用补码
但是整体是原码的除法,因此利用[y]补,[-y]补
如果我们的x减去y的补码,也就是加上[-y]补为正的话,就说明能商1,否则商0
求完商以后左移,这里是逻辑左移(不带符号)
左移4次就可以了
- 不恢复余数法
*余数 > 0,下一步就是2R - y。 就是余数是正,就用减 **
其余原理依旧是利用 [y]补 和 [-y]补
三. 十进制的加减运算
注意低位上,如果二进制大于9,则要加0110(6)校正,同时高位也要 +1