Sie sind auf Seite 1von 3

RESTORING DIVISION ALGORITHM

DIVIDEND 1100(Q) = 12
DIVISOR 0011(B) = 3

NOTE: 2S COMPLEMENT OF 3
1S COMPLEMENT OF 3 1100
2S COMPLEMENT OF 3 - 1
______
-B = 1101
______
IMPORTANT RULES:
After shifting if it ends in 0 then A<- A-B operation
After shifting if it ends in 1 then A<- A+B operation

INTIALIZATION A Q
FIRST STEP 00000 1100
DO THE LEFT 00001(A) 100_
SHIFT(1)
IF A5 IS 0 THEN 1 1101(-B)
DO (A<-A-B)
11110(A<-A-B)
1000
SINCE, THE A5 00011(B)
IS 1 WE NEED
TO RESTORE
(A<A+B)
00001(A<-A+B)
1000
DO THE LEFT 00011(A) 000_
SHIFTING(2)
IF A5 IS 0 THEN 11101(-B)
DO (A<-A-B)
00000(A<-A-B)
0001
SINCE, IT IS A5
IS 0, WE NEED
NOT TO
RESTORE.
DO THE FEFT 00000(A) 001_
SHIFTING(3)
IF A5 IS 0 THEN 11101(-B)
DO (A<-A-B)
11101(A<-A-B)
0010
SINCE, THE A5 00011(B)
IS 1 WE HAVE
TO DO (A<A+B)
00000(A<-A+B)
0010
DO THE LEFT 00000(A) 010_
SHIFTING(4)
IF A5 IS 0 THEN 11101(A-B)
DO (A<-A-B)
11101(A<-A-B)
0100
SINCE, THE A5 00011(B)
IS 1 WE NEED
TO RESTORE
(A<A+B)
00000(A<-A+B)
0100

IF YOU DIVIDE THE 12/3 QUOTIENT IS 4 THAT IS 0100

AND THE REMAINDER IS 0

RULES:
1)IF Q BIT IS 4 THEN, ACCUMULATOR IS 5
2)THEN, SHIFT ALL THE Q0 to Q4, then A0 to A5, IN
THIS CASE THE Q0 WOULD BE ALWAYS EMPTY
3)AFTER, THE SHIFTING IF THE A5 IS 0, THEN WE HAVE
TO PERFORM A<- A-B
4)AFTER, THE SHIFTING IF THE A5 IS 1, THEN WE HAVE
TO PERFORM A<-A+B
5) In Restoring if the answer is end in 1 then
once again we have to do the RESTORING
PROCESS. if it ends in 0 then no need to
perform any operation.
6)TO FIND THE B JUST TAKE 2S COMPLEMENT OF B.
7)AFTER THE A<- A-B OPERATION, IF THE A5 IS 1, THEN
WE HAVE TO PUT THE 0 IN THE Q0 PLACE.
8)AFTER THE A<- A-B OPERATION, IF THE A5 IS 0, THEN
WE HAVE TO PUT THE 1 IN THE Q0 PLACE.
9)IF YOU HAVE 4 BITS IN THE Q, THEN YOU ARE READY
FOR THE SECOND SHIFT.

Das könnte Ihnen auch gefallen