【计算机组成】定点数的乘法运算
定点数的乘法运算
本篇文章:
主要是计算机中定点数的乘法运算的相关知识点。
原码乘法计算
-
1.分析笔算乘法:
-
在计算机中进行笔算乘法的流程需要解决 一些问题?
- 符号位单独处理
- 乘数的某一位决定是否加被乘数
- 4个位积一起相加
- 乘积的位数扩大一倍
-
-
2.笔算乘法改进
-
3.笔算乘法改进后过程
-
步骤如下:
- 初态:部分积为0,乘数为1(从最低为开始),判断乘数?:如果乘数最低位为"1",部分积+被乘数;如果乘数最低位为"0",部分积+0; 本题目中,乘数最低位为"1",部分积+被乘数;
- 部分积右移,形成新的部分积,乘数右移一位,把部分积右移出来的最低位 “1”,添加到乘数的最高位 ,然后继续判断乘数?本题目中乘数最低位为"1",部分积+被乘数;
- 部分积右移, 形成新的部分积, 乘数右移一位,把部分积右移出来的最低位"1",添加到乘数的最高位,然后继续判断乘数?本题目中乘数最低位为"0",部分积+0;
- 部分积右移, 形成新的部分积, 乘数右移一位,把部分积右移出来的最低位"1",添加到乘数的最高位,然后继续判断乘数?本题目中乘数最低位为"1",部分积+1;
- 部分积右移,形成新的部分积, 乘数右移一位,把部分积右移出来的最低位"1",添加到乘数的最高位,最后的结果:部分积+乘数;
-
步骤如下:
-
4.总结:
- 被乘数只与部分积的高位相乘
- 乘积的符号位 单独处理
- 数值部分 为绝对值相乘
- 硬件需求: 3个寄存器、其中2个寄存器需要具有移位功能、1个全加器
-
5.补充:
-
逻辑左移
-
算术左移
-
逻辑右移
-
算术右移
作者:文小白
-