补码的一位乘法(2020-03-28)

本文深入解析补码一位乘法的两种方法,通过实例演示如何利用补码进行乘法运算,重点介绍了根据乘数判断加0或加|X|的部分积更新策略,以及双符号位计算的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

补码的一位乘法

今天学了补码的一位乘法,还是上例子来讲🙃
eg:已知X=+1101,Y=+1011,用补码一位乘法求X*Y。

首先,求出补码→[X]补=01101,[Y]补=01011

方法一:按照原码的一位乘法的方式,根据乘数Y来判断加0还是加|X|,而部分积的初始值为0,但是我们一般用双符号位计算,所以0的个数就是补码的位数5+1,即6位数。

在这里插入图片描述
这里面有个注意点,如果乘数Y是正数,最后的结果就不需要校正,如果Y是负数,算到最后一步之后要加上[-X]补来校正,所以更推荐方法二啦~

方法二:根据Yn+1和Yn的大小来判断部分积是加0还是[-X]补或[X]补😔
 若Yn+1<Yn,部分积+[-X]补,
 若Yn+1=Yn,部分积+0,
 若Yn+1>Yn,部分积+[X]补。
     这里的初始Yn+1,
 我们在乘数的后面补一个0😬

在这里插入图片描述
这里面要注意的就是符号位的进位要自然丢掉呀!

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值