Multiplication of Two 8 bit numbers in 8085
AIM
To prepare an assembly language program for 8085 to multiply two 8 bit numbers
PROGRAM
MVI C,00
LDA 4200
MOV B,A
LDA 4201
MOV A,D
MVI A,00
LABEL:ADD B
DCR D
JNZ LABEL
JNC LOOP
INR C
LOOP:STA 4202
MOV A,C
STA 4203
HLT
SAMPLE OUTPUT
|
ADDRESS |
DATA |
INPUT/OUTPUT |
|
4200 |
04 |
Input |
|
4201 |
02 |
Input |
|
4202 |
08 |
Output |
|
4203 |
00 |
Output |
RESULT
A program to multiply two 8 bit numbers was prepared and output obtained
You may also like:
Custom Search
MVI C,00
MVI A,02
STA 00A0
LDA 00A0
MOV B,A
MVI A,04
STA 00A1
LDA 00A1
MOV D,A
MVI A,00
LABEL:ADD B
DCR D
JNZ LABEL
STA 00A2
HLT
5th line should be
MOV D,A
What are the two numbers being multiplied and in what base?
pls give simple ckt based on 8085
THANKS BRO..
LXI H, 2200 : Initialize the memory pointer
MOV E, M : Get multiplicand
MVI D, 00H : Extend to 16-bits
INX H : Increment memory pointer
MOV A, M : Get multiplier
LXI H, 0000 : Product = 0
MVI B, 08H : Initialize counter with count 8
MULT: DAD H : Product = product x 2
RAL
JNC SKIP : Is carry from multiplier 1 ?
DAD D : Yes, Product =Product + Multiplicand
SKIP: DCR B : Is counter = zero
JNZ MULT : no, repeat
SHLD 2300H : Store the result
HLT : End of program
subscribe me