讨论计算机体系结构中的硬件算法?
用于乘以两个数字的算法称为乘法算法。硬件乘法算法用于计算机等数字电子设备中进行二进制数字的乘法运算。该图显示了硬件乘法算法的流程图。
在图中所示的流程图中,被乘数在 Y 中,乘数在 Q 中。与 Y8 和 Q8 相关的符号分别位于。这些符号进行比较,并且 X 和 Q 都设置为对应于乘积的符号,因为双长度乘积将存储在寄存器 X 和 Q 中。
寄存器 X 和 E 被清零。然后,序列计数器 (SC) 设置为一个类似于乘数的几位数的数字。
假设操作数从内存单元传输到具有 n 位字的寄存器。一个字位被符号占用,而幅度包含 n - 1 位,因为操作数必须与其符号一起存储。
初始化完成后,测试乘数中的低位。如果该位为 1,则将 Y 中的被乘数插入到存储在 X 中的当前部分积中。如果该位为 0,则不执行任何操作。
SC 减 1,并检查其新值。如果它不等于 0,则重复该过程并形成新的部分积。当 SC 等于 0 时,此过程停止。
在 X 中生成的的部分积一次一位地移位到 Q,并最终替换乘数。最终结果存储在 X 和 Q 中。这里,X 包含 MSB,Q 包含最低有效位 (LSB)。
广告