Intel mcs-48 Microscope & Magnifier User Manual


 
8049/8039
INSTRUCTION SET
Mnemonic
Description
Bytes Cycle
Mnemonic Description
Bytes Cycle
..
2
2
c
CALL
Jump to subroutine
ADD
A, R Adrl register
to
A
~
2
ADD
A,@R
Add
data memory
to
A
1
1
f
RET
Return
ADD
A, #data
Add
immediate
to
A
2 2
..,
RETR
Retu
rn
and
restore
status
2
=
ADDC A, R
Add
register
with
carry
'"
ADDC
A,@R
Add
data memory with carry
1 1
ADDC A, #data
Add
immediate
with
carry
2 2
CLR C Clear Carry
Complement
Carry
CPL C
ANL
A, R
And
register
to
A
:g,
CLR Fa Clear Flag a
ANLA,@R
And
data memory
to
A 1 1
.l!
Complement Flag a
u. CPL Fa
ANL
A, #data
And
immediate to A
2 2
Clear Flag 1 CLR
Fl
ORLA,
R Or register
to
A
CPL
Fl
Complement Flag 1
S
ORLA,@R
Or data memory to A
1
.IJI
ORLA,
#data
Or immediate to A 2
2
=
E
XRLA,
R Exclusive Or register
to
A
1
MOV A, R Move register
to
A
=
~
XRLA,@R
Exclusive
or
data memory to A
1
1
MOVA,@R
Move
~ata
memory
to
A
XRLA,
#data Exclusive or immediate to A
2
2
MOV
A,. #data Move immediate to A
2 2
INCA
Increment A
1
MOV
R,A
Move A
to
register 1
DECA
Decrement A
MOV@R,A
Move A to data
memory
1
CLR A
Clear A
MOV R, #data
Move immediate to register 2
2
CPL A
Complement A
~
MOV
@R,
#data
Move immediate to
data
memory
2
2
>
DAA
Decimal Adjust A
0
Move
A,
PSW
Move
PSW
to
A
::;
SWAP
A
Swap
nibbles of A
m
MOV
PSW,
A Move A
to
PSW
RLA
Rotate A left
m
XCH A, R Exchange A and register
C
RLCA
Rotate A
left
through carry
XCHA,@R
Exchange A and data memory
RR A
Rotate A right
XCHD
A,@R
Exchange nibble of A and register
RRCA
Rotate A right through carry
MOVX
A,@R
Move external data
memory
to
A
2
MOVX@R,A
Move A
to
external data
memory
2
INA,
P
I nput
port
to
A
2
MOVPA,@A
Move
to
A
from
current
page
2
OUTL
P,
A
Output
A
to
port
2
MOVP3
A,@A
Move
to
A
from
Page
3
2
ANL
P,
#cIate
And immediate
to
port
2
2
I
ORL
P,
#data
Or
immediate to
port
2 2
MOVA,
T
Read
Timer/Counter
INS
A,
BUS I nput BUS to A
2
.!!
MOVT,
A Load Timer/Counter
~
OUTL
BUS, A
Output
A
to
BUS 1
2
c
STRTT
Start Timer
=
ANL
BUS, #data
And
immediate
to
BUS 2 2
§
STRT CNT Start Counter
'"
.5
ORL
BUS,#data
Or immediate to BUS
2
2
~
STOP
TCNT
Stop Timer/Counter
MOVD
A, P
Input
Expander
port
to
A
2
EN
TCNTI
Enable
Timer/Counter
Interrupt
MOVD
P,
A
Output
A
to
Expander port
2
t-
DIS TCNTI
Disable
Timer/Counter
Interrupt
ANLD
P,
A
And
A
to
Expander
port
2
ORLO
P,
A Or A
to
Expander
port
2
EN
I Enable external interrupt
~
DISI
Disable external interrupt
,I
INCR
Increment registel'
i
SEL
RBO
Select register bank a
INC@R
I ncrement data-
memory
SEL
RB1
Select register bank 1
i'
DECR
Decrement
reg
ister
8
SEL
MBa
Select memory
ba
n k a
1:1:
SEL
MB1
Select
memory
bank 1
JMP addr Jump unconditional
2
2
ENTO
ClK
Enable Clock
output
on
TO
JMPP@A
Jump indirect 1
2
DJNZ R, addr Decrement register and skip
2
2
NOP
No
Operatior.
JC
addr Jump on Carry = 1
2
2
JNC addr Jump on Carry = a 2 2
J Z addr Jump on A Zero
2 2
JNZ
addr Jump on A
not
Zero 2 2
~
JTO
addr Jump on
TO
= 1
2 2
~
JNTO
addr
Jump on
TO
= a
2 2
d5
JTl
addr
Jump on
Tl
= 1
2 2
JNT1 addr Jump on
T1
= a
2 2
JFO
addr Jump on
FO
= 1
2 2
JF
1 addr
Jump on
Fl
= 1 2 2
JTF addr Jump on timer flag 2 2
JNI addr Jump on
INT
= a
2 2
JBb addr Jump on Accumulator
Bit
2
2
Mnemonics copyright Intel Corporation
1976,
1977,
1978
6·38
AFN·00191A·03