0% found this document useful (0 votes)
3 views

Booths_Multiplication Algorithm (1)

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

Booths_Multiplication Algorithm (1)

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

BOOTHS MULTIPLICATION

ALGORITHM
Multiplication of Unsigned Numbers

Product of 2 n-bit numbers is at most a 2n-bit number.


Unsigned multiplication can be viewed as addition of shifted versions of the
multiplicand.
Multiplication Hardware for Signed-Magnitude Data

• Q: Stores the multiplier


• Qs: Stores the sign of multiplier
• B: Stores the multiplicand
• Bs: Stores the sign of multiplicand
• SC (sequence counter): Stores number of bits in the
multiplier. It is decremented by 1. The process
continues until SC is non zero.
• Sum of A and B forms a partial product which is
transferred to EA register. Initially EA stores zero. • Qn: the rightmost flip-flop in
• Both partial product and multiplier are shifted to the register Q, hold the bit of the
right. 0 is shifted into E. multiplier which will be
inspected next.
Booth Algorithm
• Booth algorithm gives a procedure for multiplying binary integers in signed 2’s
complement representation in efficient way, i.e., less number of
additions/subtractions required.

• It reduces the number It operates on the fact that strings of 0’s in the multiplier
require no addition but just shifting and a string of 1’s in the multiplier from bit
weight 2^k to weight 2^m can be treated as 2^(k+1 ) to 2^m.

• As in all multiplication schemes, booth algorithm requires examination of the


multiplier bits and shifting of the partial product.
Booth Algorithm(Contd..)
• Prior to the shifting, the multiplicand may be added to the partial product,
subtracted from the partial product, or left unchanged according to following rules:

1.The multiplicand is subtracted from the partial product upon encountering the first
least significant 1 in a string of 1’s in the multiplier
2.The multiplicand is added to the partial product upon encountering the first 0
(provided that there was a previous ‘1’) in a string of 0’s in the multiplier.
3.The partial product does not change when the multiplier bit is identical to the
previous multiplier bit.
Hardware Implementation of Booth Algorithm

• The multiplicand is stored in


BR and multiplier in QR.
• An extra flip-flop Qn+1 is
appended to QR which is
cleared to 0.
• The sequence counter SC is
initialized to the number of
bits in the multiplier.
Flow Chart for Booth
Algorithm
Example- 1
• Multiplication of -5 x 4 B = -5(1011) Q= 4(0100)
2’s complement of B = 0101

Steps A Q Q-1 Operation QQ-1


0000 0100 0 Initial 00
1 0000 001 0 0 Right shift 00
2 0000 0001 0
3 0101 0001 0 A=A-B 10
0010 1000 1 Right shift
4 1101 1000 1 A=A+B 01

1110 1100 0 Right shift

-5 x 4 = -20 = 1110 1100

Verify: take 2’s complement of 1110 1100


= 00010100 =20
EXAMPLE-2

• Find − 9 X − 13 , using 5 bits register ?

Solution-
First represent − 9 and − 13 in 2’s complement form.

Initially
Multiplicand ,M = − 9 (10111)
Multiplier ,Q = −13 (10011)
A = 00000
SC = 5 (no of bits in multiplier Q)
The product should be (− 9) X (− 13) = +117
+117= 000 1110101
Multiplicand, M = − 9 (10111)
Multiplier, Q = −13 (10011)
Steps M=10111 A Q Qn+1 SC
+1=01000+1=01001

Initial 00000 10011 0 5


Subtraction (A  A−M) 01001 10011 0

1st 4
A.R.S (arithmetic right shift) 00100 11001 1

2nd A.R.S 00010 01100 1 3


3rd Addition (A  A+M) 11001 01100 1
2
A.R.S 11100 10110 0
4th A.R.S 11110 01011 0 1

5th Subtraction (A  A−M) 00111 01011 0

0
A.R.S 00011 10101 1
EXAMPLE-3
• Find +7 X − 3 by Booth multiplication algorithm, using 4 bits register ?
Solution-
First represent +7 and − 3 in 2’s complement form.

Initially
Multiplicand ,M = +7 (0111)
Multiplier ,Q = −3 (1101)
A = 0000
SC = 4 (no of bits in multiplier Q)
The product should be (+7) X (− 3) = − 21
− 21= 1110 1011

You might also like