Wednesday 28 September 2011


8 BIT DIVISION
AIM:
            To write an assembly language program in microcontroller to perform division between two 8 bit numbers.
APPARATUS REQUIRED:
            8051 kit, power chord
ALGORITHM:
1.      Start the program.
2.      Get the dividend (65) in accumulator.
3.      Get the divisor (08) in B reg.
4.      Divide the two data.
5.      Move the address location to Data Pointer.
6.      Store the remainder result in the Data Pointer.
7.      Increment the Data Pointer.
8.      Move the content of B reg (quotient) to accumulator.
9.      Move the content of accumulator to the address location in DPTR.
10. Stop the program.

PROGRAM:    
ADDRESS
LABEL
OPCODE
MNEMONICS
OPERAND
COMMENTS
4400

74
MOV
A, #Data 1
Move the dividend (65) to accumulator.
4401

65



4402

75
MOV
B, #Data 2
Move the divisor (08) to B reg.
4403

F0



4404

08



4405

84
DIV
A,B
Dividend the content of Acc and B reg.
4406

90
MOV
DPTR, #4500
Move the address location 4500 to DPTR.
4407

45



4408

00



4409

F0
MOVX
@DPTR,A
Move the content of accumulator to the address location (4500) in DPTR
440A

A3
INC
DPTR
Increment the content of DPTR.
440B

E5
MOV
A,B
Move the content of B to acc.
440C

F0



440D

F0
MOVX
@DPTR,A
Move the content of accumulator to the address location (4501) in DPTR
440E

80
HERE:SJMP HERE


440F

FE



INPUT:
4401: 65                                                                               4404: 08
OUTPUT:
4500: 0C
4501: 00
RESULT:
            Thus an assembly language program for the division of two 8 bit numbers in microcontroller was written and executed successfully.  

0 comments:

Post a Comment