Booths Algorithm for Binary Multiplication Example
Multiply 14 times -5 using 5-bit numbers (10-bit result).
14 in binary: 01110
-14 in binary: 10010 (so we can add when we need to subtract the multiplicand)
-5 in binary: 11011
Expected result: -70 in binary: 11101 11010
Multiplier
Step
Multiplicand
01110
Action
upper 5-bits 0,
lower 5-bits multiplier,
1 Booth bit initially 0
Initialization
00000 11011 0
10: Subtract Multiplicand
1
01110
11001 01101 1
11: No-op
11001 01101 1
Shift Right Arithmetic
11100 10110 1
01: Add Multiplicand
11100+01110=01010
(Carry ignored because adding a positive and
negative number cannot overflow.)
01110
01110
01010 10110 1
10: Subtract Multiplicand
10010 11011 0
Shift Right Arithmetic
Shift Right Arithmetic
00000+10010=10010
01110
00101 01011 0
00101+10010=10111
10111 01011 0
Shift Right Arithmetic
11011 10101 1
11: No-op
11011 10101 1
Shift Right Arithmetic
11101 11010 1
01110