用Booth算法计算4x3的4位补码乘法运算,写出每一步运算过程及运算结果````急.

问题描述:

用Booth算法计算4x3的4位补码乘法运算,写出每一步运算过程及运算结果````急.

以基2-Booth算法来说,它是对本位及相邻低位的值进行编码.N位的乘法运算需要N次编码.2个N位的数补码相乘,输出结果位数为2N.比如,两个乘数分别是4位补码表示, 0111(7), 1101(3)  ——其中,{R0,R1}代表输出结果,R1为被乘数,R2为乘数
R0             R1         P 
0000         0111         0     初始 
0011         0111         1     R0<=R0-R2 
0001         1011         1     右移(第一次循环) 
0000         1101         1     右移(第二次循环) 
0000         0110         1     右移(第三次循环) 
1101         0110         1     R0<=R0+R2 
1110         1011         1     右移(第四次循环) 
结果为 (1110 1011)=(-21)