8 BIT DATA MULTIPLICATION
ADDRESS
|
OPCODE
|
LABEL
|
MNEMONICS
|
OPERAND
|
COMMENT
|
4100
|
|
START
|
LXI
|
H, 4500
|
Initialize HL reg. to
![]()
Transfer
first data to reg. B
|
4101
|
|
|
|
|
|
4102
|
|
|
|
|
|
4103
|
|
|
MOV
|
B, M
|
|
4104
|
|
|
INX
|
H
|
Increment HL reg. to point next mem. Location.
|
4105
|
|
|
MVI
|
A, 00H
|
Clear the acc.
|
4106
|
|
|
|
|
|
4107
|
|
|
MVI
|
C, 00H
|
Clear C reg for carry
|
4108
|
|
|
|
|
|
4109
|
|
L1
|
ADD
|
M
|
Add multiplicand multiplier times.
|
410A
|
|
|
JNC
|
NEXT
|
Jump to NEXT if there is no
carry
|
410B
|
|
|
|
|
|
410C
|
|
|
|
|
|
410D
|
|
|
INR
|
C
|
Increment C reg
|
410E
|
|
NEXT
|
DCR
|
B
|
Decrement B reg
|
410F
|
|
|
JNZ
|
L1
|
Jump to L1 if B is not zero.
|
4110
|
|
|
|
|
|
4111
|
|
|
|
|
|
4112
|
|
|
INX
|
H
|
Increment HL reg. to point next
mem. Location.
|
4113
|
|
|
MOV
|
M, A
|
Transfer the result from acc. to
memory.
|
4114
|
|
|
INX
|
H
|
Increment HL reg. to point next
mem. Location.
|
4115
|
|
|
MOV
|
M, C
|
Transfer the result from C reg.
to memory.
|
4116
|
|
|
HLT
|
|
Stop the program
|
Comments
Post a Comment