In this note, we discuss the Instruction Set of 8051 Microcontroller. Poly Notes Hub shares a brief knowledge of it.
Introduction of Instruction set of 8051
The instruction set of 8051 is divided into 5 categories. They are as follows:
- Arithmetic Instruction
- Logical Instruction
- Data Transfer Instruction
- Boolean Variable Manipulation Instruction
- Program and Machine Control Instruction
We have listed all the instruction set of 8051 with examples with description. Each instruction set of 8051 are explained in the next sections one by one.
Different types of Instruction Set of 8051 with examples
Below we describes all the types of instruction set of 8051 with examples.
Arithmetic Instructions
Mnemonics | Description |
---|---|
ADD A, Rn | Add register to Accumulator |
ADD A, Direct | Add direct byte to Accumulator |
ADD A, @Ri | Add indirect RAM to Accumulator |
ADD A, #data | Add immediate data to Accumulator |
ADDC A, Rn | Add register to accumulator with carry flag |
ADDC A, direct | Add direct byte to A with the carry flag |
ADDC A, @Ri | Add indirect RAM to the Accumulator with carry flag |
SUBB A, Rn | Subtract register from A with borrow |
SUBB A, direct | Subtract direct byte from A with borrow |
SUBB A, @Ri | Subtract indirect RAM from A with borrow |
INC A | Increment Accumulator |
INC Rn | Increment Register |
INC direct | Increment direct byte |
INC @Ri | Increment indirect RAM |
DEC A | Decrement Accumulator |
DEC Rn | Decrement Register |
DEC direct | Decrement direct byte |
DEC @Ri | Decrement indirect RAM |
INC DPTR | Increment data pointer |
MUL AB | Multiply A and B |
DIV AB | Divided A by B |
DA A | Decimal adjust Accumulator |
Logical Instructions
Mnemonics | Description |
---|---|
ANL A, Rn | AND register to Accumulator |
ANL A, direct | AND direct byte to Accumulator |
ANL A, #data | AND immediate data to Accumulator |
ANL direct, A | AND Accumulator to direct byte |
ORL A, Rn | OR register to Accumulator |
ORL A, direct | OR direct byte to Accumulator |
ORL A, #data | OR immediate data to Accumulator |
ORL direct, A | OR Accumulator to direct byte |
XRL A, Rn | XOR register to Accumulator |
XRL A, direct | XOR direct byte to Accumulator |
XRL A, #data | XOR immediate data to Accumulator |
XRL direct, A | XOR Accumulator to direct byte |
CLR A | Clear Accumulator |
CPL A | Complement Accumulator |
RL A | Rotate Accumulator Left |
RLC A | Rotate Accumulator Left through carry |
RR A | Rotate Accumulator Right |
RRC A | Rotate Accumulator Right through carry |
SWAP A | Swap nibbles within the Accumulator |
Data Transfer Instructions
Mnemonics | Description |
---|---|
MOV A, Rn | Move register to Accumulator |
MOV A, direct | Move direct byte to Accumulator |
MOV A, @Ri | Move indirect RAM to Accumulator |
MOV A, #data | Move immediate data to Accumulator |
MOV Rn, A | Move Accumulator to Register |
MOV Rn, direct | Move direct byte to Register |
MOV Rn, #data | Move immediate data to Register |
MOV direct, A | Move Accumulator to direct byte |
MOV direct, Rn | Move register to direct byte |
MOV direct, direct | Move direct byte to direct byte |
PUSH direct | Push direct byte onto stack |
POP direct | Pop direct byte from stack |
XCH A, Rn | Exchange register with Accumulator |
XCH A, direct | Exchange direct byte with Accumulator |
XCH A, @Ri | Exchange indirect RAM with Accumulator |
XCHD A, @Ri | Exchange low-order nibble indirect RAM with Accumulator |
Boolean Variable Manipulation Instructions
Mnemonics | Description |
---|---|
CLR C | Clear carry flag |
CLR bit | Clear direct bit |
SETB C | Set carry flag |
SETB bit | Set direct bit |
CPL C | Complement carry flag |
CPL bit | Complement direct bit |
ANL C, bit | AND direct bit to carry flag |
ANL C, bit | AND complement of direct bit to carry |
ORL C, bit | OR direct bit to carry flag |
ORL C, bit | OR complement of direct bit to carry |
MOV C, bit | Move direct bit to carry flag |
Program and Machine Control Instructions
Mnemonics | Description |
---|---|
ACALL addr 11 | Absolute subroutine call |
LCALL addr 16 | Long subroutine call |
RET | Return from subroutine |
RETI | Return from interrupt |
AJMP addr 11 | Absolute jump |
LJMP addr 16 | Long jump |
SJMP rel | Short jump |
Conclusion | Diploma Engineering Notes | Poly Notes Hub
Our Poly Notes Hub provides syllabus-wise notes for polytechnic or diploma engineering students of streams like Electrical Engineering, Electronics Engineering, Electrical and electronics Engineering, Electronics & Instrumentation Engineering, and Computer Science & Technology. Our website is updating day by day so keep in touch with us for new and syllabus-wise notes and topic which helps you all to do any task regarding diploma engineering.
qui qui voluptates aut similique eum facilis dolorem distinctio est tempora vel laudantium laudantium repellendus. beatae molestias quasi repellendus aut tempora provident minima molestiae est eveniet facilis.
quia qui laboriosam dolor voluptatibus eaque natus et nesciunt consectetur amet vero ut. ut corrupti ducimus voluptatem qui in dicta itaque et ducimus nihil similique est quia animi. velit eos voluptatum quia molestiae vel hic ut neque et esse rerum fugit ipsa dolorem. quis et occaecati nemo quia nihil qui. quas consectetur est voluptas libero nostrum qui fuga fuga aut atque minus quibusdam.