You are on page 1of 23

A, Booth's Algorithm cExample 34 r, S o O8 C -82 0 Se ,

D. CH

8 09

0-8 4

4 23

EX AT

ER P

S, T

Flo 3rd

Points to remember
8 09

D. When using Booth's Algorithm: H C A, 34 c You will need twice as many bits in your Se , 82 your original two product as you have -in 80 CO operands. r, S loo bit of your operands (both F The leftmost rd 3 S, your T R multiplicand and multiplier) is a SIGN E bit, XP and cannot be used as part of the TE GA value.

0-8 4

4 23

To begin
8 09

GA Begin with a product that consists of the

D. Decide which operand will be the ,multiplier CH A 34 and which will be the multiplicand c Se Convert both operands0-82,two's complement to 8 OX bits representation using C ,S r ooleast one more bit than is X must beFl d at r , 3 for the binary representation of the required TS ER P numerically larger operand EX T

0-8 4

4 23

multiplier with an additional X leading zero bits

Example

Let's use 5-bit 2's complement:


-5 is 11011 (multiplier) 2 is 00010 (multiplicand)


r, S o C 80 O

, 82 -

c3 e

A, 4

D. CH

8 09

0-8 4

4 23

EX AT

ER P

S, T

Flo 3rd

Beginning Product

The multiplier is:

11011
r, S o C 80 O

, 82 -

c3 e

A, 4

D. CH

8 09

0-8 4

4 23

Flo zeros to the multiplier Add 5 leading 3rd S,beginning product: get ERT the P EX 00000 11011 AT G

to

Step 1 for each pass

Se If it is the FIRST pass, use82 as the previous LSB. 0, 80 CO r, S loo actions: F Possible arithmetic rd 3 S, 00 no arithmetic operation RT E XP TE01 add multiplicand to left half of product GA

. Use the LSB (least significant bit) andDthe H ,C previous LSB to determine the 4A 3 arithmetic action. c

8 09

0-8 4

4 23

10 11

subtract multiplicand from left half of product no arithmetic operation

Step 2 for each pass


A, shift Perform an arithmetic right 34 c Se , (ASR) on the entire -product. 82 80 CO r, S loo F rd 3 S,For X-bit operands, Booth's NOTE: RT E XP algorithm requires X passes. TE A D. CH 8 09

0-8 4

4 23

Example

D. Let's continue with our example of multiplying H ,C A (-5) x 2 34 c Se , Remember: 82 80 -5 is 11011 (multiplier) CO r, S oo 2 is 00010 Fl (multiplicand) d RT E 3 S, r

8 09

0-8 4

4 23

P EX we added 5 leading zeros to the And AT G multiplier to get the beginning product:

00000 11011

Example continued
8 09

D. H Initial Product and previous LSB ,C A 34 00000 11011 0 , Sec -82we use 0 for the (Note: Since this is the first pass, 80 CO previous LSB) r, S loo F rd 3 S, RT Step 1: Examine the last 2 bits E Pass 1, XP TE GA00000 11011 0

0-8 4

4 23

The last two bits are 10, so we need to: subtract the multiplicand from left half of product

.0 HD Pass 1, Step 1: Arithmetic action C A, 34 c Se (1) 00000 (left half-82, product) of 80 CO -00010 (mulitplicand) r, S loo 11110 F (uses a phantom borrow) 3rd S, RT E XP TE A G Place result into left half of product

Example: Pass 1 continued0-8


1 98 4

4 23

11110 11011 0

4 81 09 . right) Pass 1, Step 2: ASR (arithmetic shift HD C A, 34 Before ASR c Se , 82 11110 110110- 0 O8 C ,S After ASRoor Fl 3rd S, 11111 01101 1 RT E XP E T(left-most bit was 1, so a 1 was shifted in on the left) GA

Example: Pass 1 continued0-8

4 23

Pass 1 is complete.

Example: Pass 2
8 09

D. H Current Product and previous LSB ,C A 34 11111 01101 1 , Sec -82 80 CO r, S o Pass 2, Step lo 1: Examine the last 2 bits F rd 3 S, 11111 01101 1 RT E XP TE The last two bits are 11, so we do NOT need to perform GA an arithmetic action -just proceed to step 2.

0-8 4

4 23

4 81 09 . right) Pass 2, Step 2: ASR (arithmetic shift HD C A, 34 Before ASR c Se , 82 1 11111 01101 80 CO r, S After ASRoo Fl 3rd S, 11111 10110 1 RT E XP E T(left-most bit was 1, so a 1 was shifted in on the left) GA

Example: Pass 2 continued-8 0

4 23

Pass 2 is complete.

Example: Pass 3
8 09

D. H Current Product and previous LSB ,C A 34 11111 10110 1 , Sec -82 80 CO r, S o Pass 3, Step lo 1: Examine the last 2 bits F rd 3 S, 11111 10110 1 RT E XP TE The last two bits are 01, so we need to: GA add the multiplicand to the left half of the product

0-8 4

4 23

.0 HD Pass 3, Step 1: Arithmetic action C A, 34 c Se (1) 11111 (left half-82, product) of 80 CO +00010 (mulitplicand) r, S loo 00001 F (drop the leftmost carry) 3rd S, RT E XP TE A G Place result into left half of product

Example: Pass 3 continued-8 0


1 98 4

4 23

00001 10110 1

4 81 09 . right) Pass 3, Step 2: ASR (arithmetic shift HD C A, 34 Before ASR c Se , 82 00001 101100- 1 O8 C ,S After ASRoor Fl 3rd S, 00000 11011 0 RT E XP E T(left-most bit was 0, so a 0 was shifted in on the left) GA

Example: Pass 3 continued-8 0

4 23

Pass 3 is complete.

Example: Pass 4
8 09

D. H Current Product and previous LSB ,C A 34 00000 11011 0 , Sec -82 80 CO r, S Pass 4, Step loo Examine the last 2 bits F 1: 3rd S, 11011 0 00000 RT E XP two bits are 10, so we need to: The E last AT G subtract the multiplicand from the left half of the product

0-8 4

4 23

.0 HD Pass 4, Step 1: Arithmetic action C A, 34 c Se (1) 00000 (left half-82, product) of 80 CO -00010 (mulitplicand) r, S loo 11110 F (uses a phantom borrow) 3rd S, RT E XP TE A G Place result into left half of product

Example: Pass 4 continued0-8


1 98 4

4 23

11110 11011 0

4 81 09 . right) Pass 4, Step 2: ASR (arithmetic shift HD C A, 34 Before ASR c Se , 82 11110 110110- 0 O8 C ,S After ASRoor Fl 3rd S, 11111 01101 1 RT E XP E T(left-most bit was 1, so a 1 was shifted in on the left) GA

Example: Pass 4 continued0-8

4 23

Pass 4 is complete.

Example: Pass 5
8 09

D. H Current Product and previous LSB ,C A 34 11111 01101 1 , Sec -82 80 CO r, S o Pass 5, Step lo 1: Examine the last 2 bits F rd 3 S, 11111 01101 1 RT E XP TE The last two bits are 11, so we do NOT need to perform GA an arithmetic action -just proceed to step 2.

0-8 4

4 23

4 81 09 . right) Pass 5, Step 2: ASR (arithmetic shift HD C A, 34 Before ASR c Se , 82 1 11111 01101 80 CO r, S After ASRoo Fl 3rd S, 11111 10110 1 RT E XP E T(left-most bit was 1, so a 1 was shifted in on the left) GA

Example: Pass 5 continued-8 0

4 23

Pass 5 is complete.

Final Product

We have completed 5 passes, on the A 34 c 5-bit operands, so we ,are done. Se Dropping the previous LSB, the Flo d 3rfinal product is: resulting S, T
ER P r, S o O8 C -82 0

D. CH

8 09

0-8 4

4 23

EX AT

11111 10110

Verification

To confirm we have the correct answer, A, 34 c convert the 2's complement final Se , 82 product back to O 80decimal. Final product: Flo
3rd , P r, S o C TS Decimal value: ER

D. CH

8 09

0-8 4

4 23

EX AT

11111 10110 -10

which is the CORRECT product of:

(-5) x 2

You might also like