欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

计组之数据运算:6、原码乘法运算

发布时间:2025/3/15 编程问答 39 豆豆
生活随笔 收集整理的这篇文章主要介绍了 计组之数据运算:6、原码乘法运算 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

原码乘法运算

  • 思维导图
  • 原码一位乘法
    • 原理实现:(类比十进制)
    • 机器实现:
    • 寄存器步骤演示:
    • 手算实现
  • 补码一位乘法
    • 硬件区别:
    • 手算实现

思维导图

原码一位乘法

先来看一下十进制乘法的本质原理:

原理实现:(类比十进制)

机器实现:

1、取乘数、被乘数原码的绝对值
2、然后通过先相加在移位的操作计算数值(解决多个位积问题)
3、用逻辑异或计算符号位(解决符号位问题)

PS:还有一个问题是结果的位数扩大保存问题:
Q:用ACC保存乘积高位,MQ保存乘积低位,如下寄存器演示中所示

寄存器步骤演示:

PS:解释一下:就是相乘、赋值、移位循环往复的过程;
a、首先用被乘数与乘数最低位相乘,结果加到ACC中,然后将ACC、MQ向右移位
b、然后在用被乘数与乘数最低位(此时由于右移最低位其实是乘数的倒数第二位)相乘,结果加到ACC中,然后将ACC、MQ向右移位
c、结束标志:乘数有几位数值位(不包含符号位),就右移几次

1、初始化

2、乘数最低位参与运算并将值加到ACC并逻辑右移


3、右移后的最低位(乘数的倒数第二位)参与运算并逻辑右移
4、最终结果

手算实现

补码一位乘法

对比一下:

硬件区别:

手算实现

总结

以上是生活随笔为你收集整理的计组之数据运算:6、原码乘法运算的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。