【细碎知识2】定点数的乘除运算(原码一位乘、恢复余数法、加减交替法)


方法要搭配例题一起看,才能看懂

1.定点数的乘法

定点数的乘法有原码一位乘、原码两位乘、阵列乘法器,这里只说原码一位乘。

1.1 原码一位乘

方法:X*Y,按Y的每一位从低到高计算,遇到1则部分积+X,右移一位,遇到0则部分积+0,右移一位。右移的次数和乘数Y的位数相同。
在这里插入图片描述

其实很简单,看着例题理解方法即可:
例题1:
在这里插入图片描述
例题2:
在这里插入图片描述
易错点:
(1)右移的次数就是乘数Y的位数;
(2)不管X和Y的正负,计算时都用绝对值计算,即符号位都为00,最后得到的计算结果的符号位为X和Y符号位的异或值。

2.定点数的除法

2.1 恢复余数法

先看题目:
在这里插入图片描述

方法:

符号符号说明
Y*除数Y的绝对值
[-Y*]补-Y*的补码

在这里插入图片描述
当左移次数和除数Y的位数一致时,结束。
看例题:
在这里插入图片描述

易错点:
若最后一步上商0(即余数小于0),则还需进行一次恢复余数,即余数再加Y*,才能得到正确的余数。

2.2 加减交替法

方法:
在这里插入图片描述

结束条件也是:当左移次数=被除数的位数时,结束。
看例题:
在这里插入图片描述
易错点:
若最后一步上商0(即余数小于0),则还需进行一次恢复余数,即余数再加Y*,才能得到正确的余数。

2.3 比较恢复余数法和加减交替法

这两种方法比较类似,容易搞混,所以我没用文字描述,直接对比伪流程图:
恢复余数法:
在这里插入图片描述
加减交替法:
在这里插入图片描述
差别:
恢复余数法是先恢复余数(+Y*),再左移;加减交替法是先左移,再加或减Y*。
P.S:把画的这两个流程图记心里,记住易错点,就行了。

评论 20
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SinHao22

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值