Voici le jeu d'instructions du 8051

Signification des symboles utilisés:

Rn Un des registres actifs R0 à R7
direct Adresse d'un octet de RAM interne, d'un port, ou SFR
@Ri Adressage indirect par registre R0 ou R1
#data Donnée 8 bits
#data16 Donnée 16 bits
bit Adresse au niveau du bit
rel Adresse relative au PC en complément à 2 de -128 à +127
addr11 Adresse limitée au bloc de 2Ko dans lequel figure l'instruction
addr16 Adresse sur l'espace de 64Ko
Mnémonique Syntaxe Code octets cycle
MOV A, Rn E8+n 1 1
MOV A, direct E5 2 1
MOV A, @Ri E6+i 1 1
MOV A, #data 74 2 1
MOV Rn, A F8+n 1 1
MOV Rn, direct A8+n 2 2
MOV Rn, #data 78+n 2 1
MOV direct, A F5 2 1
MOV direct, Rn 88+n 2 2
MOV direct, direct 85 3 2
MOV direct, @Ri 86+i 2 2
MOV direct, #data 75 3 2
MOV @Ri, A F2+i 1 1
MOV @Ri, direct A6+i 2 2
MOV @Ri, #data 76+i 2 1
MOV DPTR, #data16 90 3 2
MOVC A,@A+DPTR 93 1 2
MOVC A,@A+PC 83 1 2
MOVX A,@Ri E2+i 1 2
MOVX A,@DPTR E0 1 2
MOVX @Ri,A F2+i 1 2
MOVX @DPTR,A F0 1 2
PUSH direct C0 2 2
POP direct D0 2 2
XCH A, Rn C8+n 1 1
XCH A, direct C5 2 1
XCH A, @Ri C6+i 1 1
XCHD A, @Ri D6+i 1 1
ADD A,Rn 28+n 1 1
ADD A, direct 25 2 1
ADD A, @Ri 26+i 1 1
ADD A, #data 24 2 1
ADDC A, Rn 38+n 1 1
ADDC A, direct 35 2 1
ADDC A, @Ri 36+i 1 1
ADDC A, #data 34 2 1
SUBB A, Rn 98+n 1 1
SUBB A, direct 95 2 1
SUBB A, @Ri 96+i 1 1
SUBB A, #data 94 2 1
INC @Ri 06+i 1 1
INC A 04 1 1
INC direct 05 2 1
INC Rn 08+n 1 1
INC DPTR A3 1 2
DEC @Ri 16+i 1 1
DEC A 14 1 1
DEC direct 15 2 1
DEC Rn 18+n 1 1
MUL AB A4 1 4
DIV AB 84 1 4
DA A D4 1 1
ANL A, #data 54 2 1
ANL A, @Ri 56+i 1 1
ANL A, direct 55 2 1
ANL A, Rn 58+n 1 1
ANL direct, #data 53 3 2
ANL direct, A 52 2 1
ANL C, /bit B0 2 2
ANL C, bit 82 2 2
ORL A, #data 44 2 1
ORL A,@Ri 46+i 1 1
ORL A, direct 45 2 1
ORL A, Rn 48+n 1 1
ORL direct, #data 43 3 2
ORL direct, A 42 2 1
ORL C, /bit A0 2 2
ORL C, bit 72 2 2
XRL A, #data 64 2 1
XRL A, @Ri 66+i 1 1
XRL A, direct 65 2 1
XRL A, Rn 68+n 1 1
XRL direct, #data 63 3 2
XRL direct, A 62 2 1
CLR A E4 1 1
CLR bit C2 2 1
CLR C C3 1 1
CPL A F4 1 1
CPL bit B2 2 1
CPL C B3 1 1
RL A 23 1 1
RLC A 33 1 1
RR A 03 1 1
RRC A 13 1 1
SWAP A C4 1 1
SETB bit D2 2 1
SETB C D3 1 1
MOV bit, C 92 2 2
MOV C, bit A2 2 1
AJMP addr11 E1 2 2
LJMP addr16 02 3 2
SJMP rel 80 2 2
JMP @A+DPTR 73 1 2
JZ rel 60 2 2
JNZ rel 70 2 2
JC rel 40 2 2
JNC rel 50 2 2
JB bit, rel 20 3 2
JNB bit, rel 30 3 2
JBC bit,rel 10 3 2
CJNE @Ri, #data, rel B6+i 3 2
CJNE A, #data, rel B4 3 2
CJNE A, direct, rel B5 3 2
CJNE Rn, #data, rel E8+n 3 2
DJNZ direct, rel D5 3 2
DJNZ Rn, rel D8+n 2 2
NOP - 00 1 1