Download P87C51Mx2 User Manual

Transcript
Philips Semiconductors
P87C51Mx2 User Manual
Extended Address Range Microcontroller
P87C51Mx2
Table 4: Enhancements to the 80C51 instruction set enabled by the prefix byte
80C51 Instruction
51MX Effect
Without Prefix
51MX Enhancement
(these instructions use
the prefix byte)
51MX Effect with Prefix
LCALL addr16
Load a 16-bit address into the
ECALL addr23
Program Counter.
Load a 23-bit address into the Program
Counter.
LJMP
addr16
Load a 16-bit address into the
EJMP addr23
Program Counter.
Load a 23-bit address into the Program
Counter.
@A+DPTR
The lower 16-bits of the
Program Counter are replaced
with the sum of the
JMP
Accumulator and the active
DPTR.
The Program Counter is loaded with the
value formed by the sum of the Accumulator
and the EPTR.
JMP
@A+EPTR
MOVC A,@A+DPTR
Code memory is accessed
using the address formed by
replacing the lower 16-bits of
MOVC A,@A+EPTR
the Program Counter with the
sum of the Accumulator and
the active DPTR.
Code memory is accessed using the
address formed by the sum of the
Accumulator and the EPTR.
MOVX @DPTR,A
The active DPTR points to an
address in the 64 kB XDATA MOVX @EPTR,A
memory.
The EPTR points to an address anywhere in
HDATA memory (not DATA, IDATA, or
EDATA).
MOVX A,@DPTR
The active DPTR points to an
address in the 64 kB XDATA MOVX A,@EPTR
memory.
The EPTR points to an address anywhere in
HDATA memory (not DATA, IDATA, or
EDATA).
INC
DPTR
Increment the active Data
Pointer.
INC
EPTR
Increment the 23 bit EPTR.
MOV
DPTR,#data16
Load a 16-bit value into the
active Data Pointer.
MOV
EPTR,#data23
Load a 23-bit value into the EPTR.
Load a 16-bit address into the
ERET
Program Counter from the
Stack.
Load a 23-bit address into the Program
Counter from the Stack.
A,Rn
Logically OR Register n to the
EMOV A,@PRi+disp
Accumulator.
Load the Accumulator with the value from
the Universal Memory Map at the address
formed by PR0 or PR1plus the
displacement (a value from 0 to 3).
ANL
A,Rn
Logically AND Register n to the
EMOV @PRi+disp,A
Accumulator.
Load the Universal Memory Map address
formed by PR0 or PR1 plus the
displacement (a value from 0 to 3) with the
contents of the Accumulator.
XRL
A,Rn
Exclusive OR Register n to the
ADD
Accumulator.
Add an immediate data value from 1 to 4 to
the specified Universal Pointer. This is a 24bit addition.
RET
ORL
PRi,#data2
30
Preliminary 2003 May 13