## Pages

### DIVISION OF TWO 8 BIT NUMBERS

AIM:
To perform the division of two 8 bit numbers using 8085.

ALGORITHM:
2) Move the data to a register(B register).
3) Get the second data and load into Accumulator.
4) Compare the two numbers to check for carry.
5) Subtract the two numbers.
6) Increment the value of carry .
7) Check whether repeated subtraction is over and store the value of product and
carry in memory location.
8) Terminate the program.

PROGRAM:
LXI  H, 4150
MOV  B,M      Get the dividend in B – reg.
MVI  C,00       Clear C – reg for qoutient
INX  H
MOV A,M       Get the divisor in A – reg.
NEXT:     CMP B             Compare A - reg with register B.
JC  LOOP         Jump on carry to LOOP
SUB  B             Subtract A – reg from B- reg.
INR C               Increment content of register C.
LOOP:    STA 4152         Store the remainder in Memory
MOV A,C
STA 4153         Store the quotient in memory
HLT                  Terminate the program.

OBSERVATION:

Input:
F (4150)
FF (4251)
Output:
01 (4152) ---- Remainder
FE (4153) ---- Quotient

RESULT:
Thus the program to divide two 8-bit numbers was executed.

1. It's very straightforward to find out any matter on web as compared to textbooks, as I found this piece of writing at this website.

Take a look at my web page raspberry ketones

2. this program is executable but coments are not right.

1. your are good at programming.............

2. This comment has been removed by the author.

3. hahaha what a dumbass programm check mine out more simple:

LXI H 3000h
MOV A M
INX H
MOV B M
MVI C 00h
L: SUB B
INR C
CMP B
JNC L
REMAINDER: STA 2051h
MOV A C
QUOTIENT: STA 2050h
HLT

1. store dividend at 3000h and divisor at 3001h rest is history hehe

2. its not correct.you are substracting before you comparing the numerator and denominator .

3. its not correct.you are substracting before you comparing the numerator and denominator .

4. good work , useful and innovative to find exp on web

5. logic problem,you're storing the divisor if carry flag is set but we need to store 0 when divisor is more than
the
dividend

6. There are critical mistakes in the program:
1) CMP B is wrong because you comparing divisor with dividend, i.e., divisor-dividend so your logic fails
2) use of JMP which makes the program run infinite time

Actual Program:
mvi D,00h
lda 4150h
mov B,A
lda 4151h
mov C,A
cmp B
jnc x
mov A,B
y: sub C
inr D
cmp C
jnc y
sta 4152
mov A,D
sta 4153
hlt
x: mov A,B
sta 4152
mov A,D
sta 4153
hlt

7. thank you very much