原码一位乘法

1、移位操作及其意义

逻辑左移:

 算术左移:

 逻辑右移:

 算术右移:

 2、二进制乘法的手工计算过程

 a.说明乘法可由加法实现

b.存在的问题:

  *需要多输入的全加器(最多为n+1)

  *需要长度为2n的积寄存器

  *对应乘数的不同位,部分积左移次数不同

且乘法过程中总移位次数多

如何解决上述问题(改进方法)

*需要多输入的全加器(最多为n+1)

解决方法:基于FA的循环累加0或被乘数

*针对乘数不同位部分积左移次数不同的问题

解决方法:右移部分积,同时也将乘数右移,将移出的部分加入乘数的最左边

*需要长度为2n的积寄存器

解决方法:从部分积和乘数寄存器取结果

3、原码一位乘法算法

*符号位单独参加运算,数据位取绝对值参加运算。

*运算法则:

 *运算过程采用改进的乘法运算方法

原文地址:https://www.cnblogs.com/fate-/p/12793494.html