Upload
aminuz-zaman
View
6
Download
0
Embed Size (px)
DESCRIPTION
microcontroller 8051 programs with descriptions of every command how they are being executed and also detailed with diagrams.
Citation preview
Addition of two 8 bit numbers:
MVI C 00h
LDA 4000h
MOV B A
LDA 4001h
ADD B
JNC LABEL
INR C
LABEL: STA 4002h
MOV A C
STA 4003h
RST 5 (or) HLT(OR)
LXI H 4000h
MOV A M
INX H
ADD M
INX H
MOV M A
RST 5
Addition of two 16 bit numbers:
MVI C 00h
LHLD 4000h
XCHG
LHLD 4002h
DAD D
JNC LABEL
INR C
LABEL: SHLD 4004h
MOV A CSTA 4006h
HLT
(OR)LXI H 4000h
MOV A M
INX H
ADD M
STA 4004h
INX H
MOV A M
INX H
ADC M
STA 4005h
MVI A 00h
RAL
STA 4006h
RST 5Subtraction of two 8 bit numbers:
MVI C 00h
LDA 4001h
MOV B A
LDA 4000h
SUB B
JNC LABEL
INR C
CMA
ADI 01h (or) INR ALABEL: STA 4002h
MOV A C
STA 4003h
RST 5
(OR)LXI H 4000h
MOV A M
INX H
SUB M
INX H
MOV M A
RST 5
Subtraction of two 16bit numbers:
MVI C 00h
LHLD 4000h
XCHG
LHLD 4002h
MOV A E
SUB L
STA 4004h
MOV A D
SBB H
JNC LABEL
INR C
CMA
INR A
LABEL: STA 4005h
MOV A C
STA 4006h
HLT(OR)LXI H 4000h
MOV A M
INX H
SUB M
STA 4004h
INX H
MOV A M
INX H
SBB M
STA 4005h
MVI A 00h
RAL
STA 4006h
RST 5Multiplication of two 8 bit numbers:Repetitive addition method:-
LDA 4000h
MOV E A
MVI D 00h
LDA 4001h
MOV C A
LXI H 0000h
LABEL: DAD D
DCR C
JNZ LABEL
SHLD 4002h
RST 5Rotation method:-LXI H 4000h
MOV E M
MVI D 00h
INX H
MOV A M
LXI H 0000h
MVI B 08h
LABEL1: DAD H
RAL
JNC LABEL2
DAD D
LABEL2: DCR B
JNZ LABEL1
SHLD 4002h
RST 5Sorting of n-numbers in ascending order:
LDA 4000h
MOV B A
DCR B
LOOP3: LXI H 4000h
MOV C M
DCR C
INX H
LOOP2: MOV A M
INX H
CMP M
JC LOOP1
MOV D M
MOV M A
DCX H
MOV M D
INX H
LOOP1: DCR C
JNZ LOOP2
DCR B
JNZ LOOP3
HLTDivision of two 8 bit numbers:
MVI C 00h
LDA 4000h
MOV B A
LDA 4001h
LABEL: CMP B
JC LABEL1
SUB B
INR C
JMP LABEL
LABEL1: STA 4002h
MOV A C
STA 4003h
RST 5Sorting of n-numbers in descending order:LDA 4000h
MOV B A
DCR B
LOOP3: LXI H 4000h
MOV C M
DCR C
INX H
LOOP2: MOV A M
INX H
CMP M
JNC LOOP1
MOV D M
MOV M A
DCX H
MOV M D
INX H
LOOP1: DCR C
JNZ LOOP2
DCR B
JNZ LOOP3
HLTA>B: CY=Clear, ZF=Clear( JNC, JNZ
A=B: ZF=Set
( JZ
A