Signed multiplication using Booth’s Algorithm
Question
Suppose we need to do multiplication on two signed binary numbers: 1101 x 1010. Please fill the following tables showing the content of each of the three registers, i.e. multiplier, multiplicand, and Product during each iteration.
Iteration | Step | Multiplicand | Multiplier | Product |
0 | Initial Values | |||
1 | ||||
2 | ||||
3 | ||||
4 | ||||
Explanation
We will solve this question using Booth’s algorithm.
Multiplicand = 1011 and 2’s complement of (1011) = 0101 = -5
Multiplier = 0101 = 5
Product = -5 * 5 = -25 = – 11001
In 2’s complement form:
-25 = 00111
Therefore, product = 00111
Multiplicand (MD) = 1011
MD’ + 1 = 0101
Here is the table for the multiplication of two signed numbers using Booth’s algorithm.
Iteration | Step | AC | Multiplier(MR) | (Q+1) |
0 | Initial Values | 0000 | 0101 | 0 |
1 | AC + MD’ + 1 | 0000 0101 0101 |
0101 | 0 |
ASHR (Arithmetic Shift Right) | 0010 | 1010 | 1 | |
2 | AC + MD | 0010 1011 1101 |
1010 | 1 |
ASHR | 1110 | 1101 | 0 | |
3 | AC + MD’ + 1 | 1110 0101 0011 |
1101 | 0 |
ASHR | 0001 | 1110 | 1 | |
4 | AC + MD | 0001 1011 1100 |
1110 | 1 |
ASHR | 1110 | 0111 | 0 |
Product = 11100111
2’s complement of 11100111 = 00011001 = -25
Therefore, 1011 X 0101 = 11100111
i.e., -5 X 5 = -25
This is the table when we have executed the booth’s algorithm.
Also read, Difference between cloud and client/server computing