用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)