M8048/M8748/M8035L

INSTRUCTION SET

Mnemonic

ADD A, R

ADD A,@R

ADD A, #data

ADDC A, R

ADDC A,@R

ADDC A, #data

ANL A, R

ANLA,@R

ANL A, #data

ORL A, R

~ORL A, @R

::J ORL A, 'data

E

::J XRL A, R

~XRL A, @R XRL A, #data

INC A DECA CLR A CPL A DAA SWAP A RL A RLC A

RRA

RRC A

IN A, P

OUTL P, A

Description

Bytes Cycle

..

Mnemonic

Add register to A

 

c

CALLaddr

 

:;

Add data memory to A

 

e

RET

Add immediate to A

 

<II'"

RETR

 

::J

Add register with carry

 

 

 

Add data memory with carry

 

..

CLR C

Add immediate with carry

 

CPL C

And register to A

 

co

CLR FO

And data memory to A

 

Il

CPL FO

And immediate to A

 

 

CLR F1

Or register to A

 

 

CPL F1

Or data memory to A

 

 

 

Or immediate to A

 

 

MOV A, R

Exclusive or register to A

 

 

MOV A,@R

Exclusive or data memory to A

 

 

MOV A, #data

Exclusive or immediate to A

 

 

MOV R, A

Increment A

 

..

MOV@R,A

Decrement A

 

MOV R, #data

Clear A

 

~

MOV @R, #data

Complement A

 

::E

MOV A, PSW

Decimal adjust A

 

l!

MOV PSW, A

Swap nibbles of A

 

co

XCH A, R

 

C

Rotate A left

 

 

XCHA,@R

Rotate A left through carry

 

 

XCHD A,@R

Rotate A right

 

 

MOVXA,@R

Rotate A right through carry

 

 

MOVX@R,A

 

 

 

MOVPA,@A

Input port to A

 

 

MOVP3 A,@A

Output A to port

 

 

 

Description

Bytes Cycles

Jump to subroutine

 

Return

2

Return and restore status

2

Clear carry

Complement carry

Clear flag 0

Complement flag 0

Clear flag 1

Complement flag 1

Move register to A

Move data memory to a

Move immediate to A

Move A to register

Move A to data memory

Move immediate to register

Move immediate to data memory

Move PSW to A

Move A to PSW

Exchange A and register

Exchange A and data memory

Exchange nibble of A and register

Move external data memory to A

Move A to external data memory

Move to A from current page

Move to A from page 3

ANL P, #data

ORL P, #data

'S INS A, BUS

%

., OUTL BUS, A 0

ANL BUS, #data

::J

"- ORL BUS, #data

.5

MOVD A, P

MOVD P, A

ANLD P, A

ORLD p, A

i INC R

.. INC@R

And immediate to port Or imm~diate to port

Input BUS to A

Output A to BUS

And immediate to BUS Or immediate to BUS Input expander port to A Output A to expander port And A to expander port Or A to expander port

Increment register Increment data memory

MOV A, T

~MOVT, A

STRT T::J

0

0.. STRT CNT -;:

STOP TCNT

E

i= EN TCNTI DIS TCNTI

EN I

DIS I

:g SEL RBO

cSEL RB1

8 SEL MBO

Read timer/counter

Load timer/counter

Start timer

Start counter

Stop timer/counter

Enable timer/counter interrupt Disable timer/counter interrupt

Enable external interrupt Disable external interrupt Select register bank 0 Select register bank 1 Select memory bank 0

'"

DEC R

Decrement register

SEL MB1 ENTO CLK

Select memory ban k 1 Enable clock output on TO

J:

JMP addr

JMPP@A DJNZ R, addr JC addr JNC addr JZ addr

JNZ addr

Jump unconditional Jump indirect Decrement register and skip Jump on carry = 1

Jump on carry = 0 Jump on A zero Jump on A not zero

NOP

No operation

"c JTO addr e! JNTO addr

CD

JT1 addr

JNT1 addr

JFO addr

JF1 addr

JTF addr

JNI addr

JBb addr

Jump on TO ~ 1

Jump on TO ~ 0

Jump on T1 ~ 1

Jump on T1 ~ 0

Jump on FO ~ 1

Jump on F1 = 1

Jump on timer flag

Jump on INT ~ 0

Jump on accumulator bit

Mnemonics copyright Intel Corporation 1978

6-31

AFN-Q0780A-QS

Page 174
Image 174
Intel mcs-48 manual M8048/M8748/M8035L, Instruction SET