100% found this document useful (1 vote)
111 views4 pages

Non-Restoring Division Algorithm

Uploaded by

Abhay Singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
111 views4 pages

Non-Restoring Division Algorithm

Uploaded by

Abhay Singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Non-Restoring Division for Unsigned Integer

it is less complex than the restoring one because simpler operation is involved i.e. addition and
subtraction, also no restoring step is performed. In the method, rely on the sign bit of the register which
initially contain zero named as A.

 Step-1: First the registers are initialized with corresponding values (Q = Dividend, M = Divisor, A =
0, n = number of bits in dividend)
 Step-2: Check the sign bit of register A
 Step-3: If it is 1 shift left content of AQ and perform A = A+M, otherwise shift left AQ and perform
A = A-M (means add 2’s complement of M to A and store it to A)
 Step-4: Again the sign bit of register A
 Step-5: If sign bit is 1 Q[0] become 0 otherwise Q[0] become 1 (Q[0] means least significant bit of
register Q)
 Step-6: Decrements value of N by 1
 Step-7: If N is not equal to zero go to Step 2 otherwise go to next step
 Step-8: If sign bit of A is 1 then perform A = A+M
 Step-9: Register Q contains quotient and A contains remainder.
Example-1
Find 11 divided by 3 using Non-Restoring Division Algorithm For Unsigned Integer

Solution:
Dividend = 11
Divisor = 3
First the registers are initialized with corresponding values (Q = Dividend, M = Divisor, A = 0, n = number of bits
in dividend)
n M A Q Operation
4 00011 00000 1011 initialize
4 00011 00001 011_ shift left AQ
11110 011_ A=A-M
11110 0110 Q[0]=0
3 00011 11100 110_ shift left AQ
11111 110_ A=A+M
11111 1100 Q[0]=0
2 00011 11111 100_ shift left AQ
00010 100_ A=A+M
00010 1001 Q[0]=1
1 00011 00101 001_ shift left AQ
00010 001_ A=A-M
00010 0011 Q[0]=1

register Q contain the quotient 3 and register A contain remainder 2

1. Dividend = 11
2. Divisor = 3
3. -M = 11101

N M A Q Action

4 00011 00000 1011 Begin

00011 00001 011_ Shift left AQ

00011 11110 011_ A=A-M

3 00011 11110 0110 Q[0] = 0

00011 11100 110_ Shift left AQ

00011 11111 110_ A=A+M


2 00011 11111 1100 Q[0] = 0

00011 11111 100_ Shift left AQ

00011 00010 100_ A = A +M

1 00011 00010 1001 Q[0] = 1

00011 00101 001_ Shift left AQ

00011 00010 001_ A=A–M

0 00011 00010 0011 Q[0] = 1

So, register A contains the remainder 2, and register Q contains the quotient 3.

You might also like