Microcontroller – Rainbow Electronics AT89C2051 User Manual
Page 9
Microcontroller
5-55
Table 3. Memory Addressing Instructions
Notes:
1. ACC always contains 16 valid bits. All operations are performed in 16-bit precision. 8-bit operands are zero-filled when they
are fetched.
2. SI decrements when data is pushed
3. Data is stored in little endian format.
4. There are no user accessible flags. In the case of CMP, internal flags are maintaned only long enough to accommoate the
LT-UGE instruction.
Name
Description
(Unused Address Modes)
LD
Load ACC 16 bits
LDB
Load ACC 8 bits
ADD
Add 16 bits
ADDB
Add 8 bits
SUB
Subtract 16 bits
SUBB
Subtract 8 bits
MUL
Multiply by 16 bits
MULB
Multiply by 8 bits
DIV
Divide by 16 bits
DIVB
Divide by 8 bits
AND
And 16 bits
ANDB
And 8 bits
OR
OR 16 bits
ORB
OR 8 bits
XOR
XOR 16 bits
XORB
XOR 8 bits
CMP
Compare 16 bits (ACC = 1 if equal)
CMPB
Compare 8 bits
LDI
Load INDEX (16 bits only)
LEAI
Load INDEX with address
(00, 05)
ST
Store ACC 16 bits
(00, 05)
STB
Store ACC 8 bits
(00, 05)
STI
Store INDEX (16 bits only)
(00, 05)
SHR
Shift right (8-bit count only)
SHL
Shift left (8-bit count only)