从乘数每一位出发
二进制的一位只有 0 和 1。为 1 时贡献相应位权的被乘数,为 0 时贡献零,把各项相加就是乘积。
2.4.2 · 建议 18 分钟
先按原码思路累加与移位,再比较补码一位乘法和两位分组。
二进制的一位只有 0 和 1。为 1 时贡献相应位权的被乘数,为 0 时贡献零,把各项相加就是乘积。
把绝对值相乘,再决定正负号。逐轮累加后整体右移,可以保持高低部分的相对位权,不必把所有部分积一次相加。
比较法也称 Booth 算法,根据相邻两位的组合决定加、减或不加减。先学会原码一位乘,再选择这个模式。
橙色位是本轮正在判断或移动的位;寄存器、当前操作和公式同时更新。每次单步只完成一次判断、加减或移位。
用两道小题检查是否看懂本页的核心过程,答错可以重新尝试。
教材的纯小数乘法与本页整数乘法小数点位置不同,但位权、累加与移位思想相通。整数版补码比较法做 4 轮移位;不要直接混用教材小数版最后一步不移位的计数约定。
两位乘法每次处理两位乘数,需要处理 0、1、2、3 倍被乘数;本页用两位分组的位权展开解释这一点,不模拟教材优化乘法器的进位与控制电路。
补码校正法可把负乘数的影响作为校正项处理;比较法将符号处理融入每轮运算。阵列乘法器则并行处理部分积,硬件结构在后续章节展开。
依据教材章节范围重新设计,图示、演示数据与练习均为本站制作。配合课本阅读;本站不提供教材电子版。