Booth's Multiplication Algorithm

Master the efficient way to multiply signed binary numbers with our interactive calculator

1010
× 1101
= 10000010

Understanding Booth's Algorithm

What is Booth's Algorithm?

Booth's algorithm is a multiplication algorithm for signed binary numbers that reduces the number of additions required by recoding the multiplier. It's particularly efficient for numbers with consecutive 1s or 0s.

How It Works

The algorithm examines pairs of bits in the multiplier and performs operations based on the pattern: 00 (no operation), 01 (add), 10 (subtract), 11 (no operation).

Why It's Efficient

For numbers with consecutive 1s, Booth's algorithm can reduce multiple additions to just one addition and one subtraction, making it much faster than traditional multiplication.

Algorithm Steps

1

Initialize

Set accumulator (A) to 0, load multiplier (Q), and set Q₋₁ to 0

2

Examine Bits

Look at Q₀ and Q₋₁ to determine the operation

3

Perform Operation

Add, subtract, or do nothing based on bit pattern

4

Shift Right

Arithmetic right shift of A and Q

5

Repeat

Continue until all bits are processed

Booth's Recoding Rules

Q₀ Q₋₁ Action Explanation
0 0 No operation String of 0s - just shift
0 1 Add M to A End of 1s string - add multiplicand
1 0 Subtract M from A Start of 1s string - subtract multiplicand
1 1 No operation Middle of 1s string - just shift

Booth's Multiplication Algorithm Flowchart

START Initialization: AC = 0, Qn+1 = 0, SC = n BR ← Multiplicand, QR ← Multiplier (QR holds the multiplier) Qn Qn+1 AC ← AC + BR + 1 (AC = AC - BR) (Two's complement) AC ← AC + BR (Add multiplicand) No Operation Shift and Decrement: ashr (AC & QR) (Arithmetic Shift Right) SC = SC - 1 SC END 10 01 00/11 ≠ 0 = 0 Loop back

Flowchart showing the step-by-step process of Booth's multiplication algorithm with proper initialization, decision logic, and arithmetic operations

Interactive Calculator

Enter two decimal numbers and see Booth's algorithm in action

M (Binary): 0111
Q (Binary): 1101
Expected Result: -21

Step-by-Step Process

Step 0 of 0
Step Q₀ Q₋₁ Action A (Accumulator) Q (Multiplier) Q₋₁ Explanation

Final Result

Binary Result: 00000000
Decimal Result: 0

Practice Examples

5 × 3 = 15

Positive × Positive

7 × (-3) = -21

Positive × Negative

(-4) × 6 = -24

Negative × Positive

(-3) × (-5) = 15

Negative × Negative