Arithmetic Opera
hy
omeuter Architecture 2-22
TOS Tis
~ pe realization of 0 multi
7. Explain an algorithm to multiply two positive numbers. ‘Also discuss te ren a ; eer
an
to implement the same. a
DEA)
EASES
hordwore, COESLEEO
2. Design a multiplier that multiplies two 4-bit number
it binary numbers:
3, Explain with an example how to multiply "00 unsigne’
sion of multiplication algoritim
and
4, Explain the sequential vei
peo
ew sign Multiplication-Booth's Algorithm
multiplication is
ts both positive
5 a Booth’s algorithy
m for si ned-number :
‘ and negative number
* A powerful algorith
which generates a 2Qn-bit product and trea’
uniformly.
we can reduce the number
a difference between tw
ted_as follows.
«This algorithm suggest that
multiplication by represen
numbers. For example, multiplier
ting multiplier as
0.0 1110 (14) can be represent
oft ]o]ofo]e] «
ofo}ofo|1{o|@"
(ofet+ i+] 4 Ot)
«Therefore, the product can be computed by adding 24 times the mt
2's complement of 2’ times the multiplicand. In simple notations,
the sequence of required operations by recoding the preceding
0+100-10
+ In general, for Booth’s algorithm recoding scheme can be given
| 4 times the shifted multiplicand is selected when moving from 0 to 1
multiplicand is selected then moving from 1 to 0, and 0 times the
selected for none of the above case, as multiplier is scanned from right te
* We have to assume an implied 0 to right of the multiplier
in the following examples.
Recode the multiplier 1011 0 0 for Booth’s multipl
Solution : j
4— Implied zero
: 01°1000 Multiplier
-1+1 0-10 0 Recoded multiplie
(EEREEZE) Recodte the multiplier 0 1.10.0 1 for Booth’s muttip
TECHNICAL PUBLICATIONS”. An up trust for hi 3r Architecture Arithmetic Operations
computer
solution *
: — Implied zero
Multiplier
Recoded multiplier
+ The Fig. 235 shows the Booth’s multiplication. As shown in the Fig. 235,
whenever multiplicand is multiplied by
~1, its 2's complement is taken as a partial
result.
Multiplier: 7001100
Mutiplicand =: 010011
Recoded multiplier: 0+ 10-100
0110010
+1 0-1 0 41 -1
Ol +jofo]a[4] muttipticana
x{0|+1}0|-1;0 [0] Mutiptier
ojololojojojojojolololo
+{o)olololojolololololo .
+ alafayala[olafafola + 2's complement of the multiplicand
+[ololololololololo
+fololo[1jolo|1]4
+ {ololojolofolo
olojojoli1[1jiajojojizjolo
Note : Shaded portion indicates sign extensions
Fig. 2.3.5 Booth's multiplication
+ The same algorithm can be used for negative multiplier. This is illustrated i
following example.
CREED Muttiply 01.110 (414) and 1101105),
Solution :
(#14) Multiplicand
tlafota[4) (5) muttiptier
Recoded multiplier
Multiplication ;
ojajiatiajo Multiplicand
x|o{-1]+1] 0 [41 Recoded multiplier
| aj1 1 —— 2's complement of the multiplicand
o|o o
1)4
0
= 2's complement of the multipli
‘lijajolajafafolafeo (-70)
Note : Shaded portion indicates sign extensions
= "xnowiedge
TECHNICAL PUBLICATIONS”. An up tneustSe F
Anthmetic
2-24 ___Set ol
multiplier and ng
Computer Architect
Ral
* The same algorithm also can be used for negauve
multiplicand. This is illustrated in the following
CEEEEIZEZLD Explain the following pair of signed 2's comple
Multiplicand 110011 (-13)
Multiplier 101100 (-20)
example,
numbers
Solution :
1/01/10 0 Muniptier
° Recoded multiplier
Multiplication :
iTtlofo t|1 Munipticand
Recoded muttiplier
0/010
‘000
+000 =~ 7s complement of the
+/0 00
+fapa] 1
+[olo 0 == 25 complement of the
000100000100 (260)
Note : Shaded portion indicates sign extensions
Gams Multiply -9x7 using Booth’s algorithm
Solution :
Tolt 111) (9) Muttipticana
01111 11Q) MMutiptier
| Recoded multipie
MultiplicationAimbinonic Operations
[a [o[o| 1|~ (2) Muttipticans
of;1}4}4 (14) Muttiptior CONS
+4[0[ 0[-1] 0] | recoded mutiptior
Implied veo (100 b i
zero
+
jultiplication ee 4
yer L,
—[a{ofol +] mutipticana aA VIG p od
x{+1/0[0|-1]0] Recoded muttiptier Oo+T
fo] o[ 0] o| ol oj ojo
To/0/0/0|1|1|1] z's complement of the multiplicand Rose
Tololojojolo
jololet 2
ofolojo}o}
(lolol
[ayofo|1
Pager
Solution :
oi i (19) Muttipticand
(- 5) Multiplier
Recoded multpier
lultiplication
1
‘ Recoded multiplier
0 | 1}=—2's complement of
+ 2's complement of
(65)
* The Booth’s algorithm can be implemented as show!
* It consists of n-bit adder, shift, add subtract control
Qand Q_,.
ath
recunicAl PUBLICATIONComputer Architecture 2-26
Arithmotie
on
i
* As shown in the Fig. 2.3.6 multiplier and muttiplicand are Ha into uy
and register B, respectively, and register A and Quy ae ini fl Y set tg gh
Sequence counter, SC is set to a number n equal to the number of bits iy
multiplier,
Multipicand
n-bit bus
Binary Down
Counter
Shift, add
and subtract
nit Adder
Enable
* intial settings: 9 and@_y=0
Fig. 2.3.6 Hardware implementation of signed binary multi
if
* The n-bit adder 3
TECHNICAL PUBLICATIONS”. An up trust forkArthematic:
tee bits are differ. then the multiplicand (B-register) is added to or
subtracted from the A register. depending on the status of bits
pate are Q> =
= 1 then multiplicand is added and if bits are Qo=1
= 0 then multiplicand is subtracted.
son ot subtraction right shift occurs such that the leftmost bit of
not only shifted into A ,_>, but also remains in A n-t- This is required
preserve the sign of the number in A and Q. It is known as an arithmetic shift,
© it preserves the sign bit.
© After ai
metic shift, the sequence counter is decremented by 1 and if it is not
zero, computational loop is repeated. That is, in all computational loop is repeated
netimes
Flowchart of Booth's Multiplication Algorithm
+ The sequence of events in Booth’s algorithm can be explained with the help of
flowchart and algorithm shown in Fig. 2.3.7.
Flowchart Algorithm
Step 1: Load A=0,Q_,=0
B = Multiplicand
Q = Multiplier
Decrement sequence
if not zero, repeat step 21
Step 5 : Stop
‘Arttumetic Shit Right: A, Q, Q_
Sc =-sc-1
ication
Fig. 2.3.7 Booth's algorithm for signed multlP! :
iArithmetic Operas
Computer Architecture 2-28
* iplicatic Give the flow tabl,
(SEMAOERAY Multiply (-7) and (3) by using Booth's multiplication, Give the fl eg
inultiplication.
Solution :
jer (Q)= (3) = 0011
Multiplicand (B) = (-7)=1001 , Multiplier (Q):
A a Operation
Ag] Aa] As] Ao | Qs! Qe Qy] 9]
ial
1fojo{ Jojofofoljojolij1jo Initial
O}0/0/0JaA
0/1] 1] 4 |z'scomptementofB] — QgQ_=10
* |
of1{4 |) | cee cam can
ofifa| fofols 1| 1 | Arithmetic shit right
ofifo] [ofo 0| 1 | Arithmetic shift right
oe A,=01
+] 1/0 2
0 of4
ofo|t 1 olo
ofofo 1 1] 4] 0[ Arithmetic shit rig
Result =| 1] 1] a}olafo]a{1| = -21
Review) Questions
Discuss the principle behind the Booths multiplier,
IMlustrate Booths algorithm with an example.
3. Explain in detail about the multiplication algorithm with suitable example
igorithm with suitable example.
Explain Booth's Algorithm for the
| 4. Define Booth Multiplication al
multiplication of signed tvo's comple
| 5
PEE Bit Pair Recoding of Multipliers
* To specd-up the
bit-pair recoding
the m
multiplication
is used. It is
aximum number of summi
In this technique, the Booth-recode
cach pair is represented by its ¢
number of multiplier bits to half.
¢ For
Process in the Booth's algorif
also called modified Bootht
ands,
d multiplier bits
quivalent single bit
ample pair (+ 1-1) is equivalent to
adding -I times multiplicand at shifted pos
posilion i + 1, the same result is obtained
the pair @
ion ito +1 #
by adsomputer Architecture 2-29 Arithmetic Operations
position i. Similarly, (+1 0) is equivalent to (0 +2), (-1 +1) is equivalent to (0 -1)
and so on. .
Multiplier Multiplier bit on Bit-pair recoded
bit-pi
+ By replacing pairs with their
the right multiplier bit at
equivalents we can get bit-pair ~~ position i
multiplier. But instead of a
deriving bit-pair__—_ recoded 0
multiplier from Booth recoded
multiplier one can directly
derive it from — original
multiplier. The — bit-pair
recoding of multiplier can be
directly derived from
Table 2.3.2. The Table 2.3.2
shows the bit-pair code for all
possible multiplier bit options.
Table 2.3.2
Find the bit-pair code for multiplier.
11010.
olution : By referring table we can derive bit-pair code as follows :
Sign extension ——
1 4 0 4 0 [Q]— Implied oto
right of LSB
o -1 2
Multiply given signed 2's complement numbers using bit-pair recoding
A=110101 multiplicand (-11)
B=011011 multiplier (+27)
‘olution : Let us find the bit-pair code for multiplier.
o 14 0 4 1 [0] Implied oto
4
1
right of LSB.
#2 7
— ine
lultiplication : Multiplicand X + 2 =eft shift multiplicahd by 1 bit = 1101010.
1/1]o]4fo] 1] Multiplicand
_ x [eal [aay [a Multiplier
S}o}olo/ofololo] + ]o] 4] 1] + 2's comptement of the multiplicand
*{ololofolololafolila =— 2's complement of the multipiicand
+l folpolato aa
fafa tfolajafolafolalaia
I knowied?
TECHNICAL PUBLICATIONS” - An up thrust for~
Computer Architecture 2-30 Arithoteo
— ‘Do
EEERIERED Give the Booth’s recoding and bit-pair recoding of the number.
1000111101000101.
Solution : Booth's recoding
1 o 0 0 1 1 1 1 0 1 o 0 0 1 oo4
10 0 4 0 0 0 4 Ht 0 0 toot
Bit-Pair Recoding
-2 cal 0 -1 oa 0 1 oa
CRED Multiply the following pair of signed 2's complement numbers using bit
recoding of the multipliers : A = 010111, B = 101100.
Solution: A=010111 Multiplicand (+ 23)
B 101100 Multiplier (- 20)
Let us find the bit-pair code for multiplier
Multiplication :
=|+ Te
°
°
°
=[=fef=
+
a}]aialeo
°
[eo
fo|
°
I
elo
|
|
|
°
24
lolola
{a[=
L
°
°
°7
tir recoding of the murmtber
|
Wh Pair Recné
rorooo tong
—e—_JL_L__t__}
1 “ 0 #1 zt
oding of the meultipticrs