Sunteți pe pagina 1din 3

8051 suporta urmatoarele moduri de adresare:

 Directa
 Indirecta
 Pe registrii
 Imediata
 Indexata

Instructiunile MCU 8051 sunt incadrate in urmatoarele categorii:


 Data transfer (MOV)
 Arithmetic Instructions (ADD, SUBB, MUL, DIV)
 Logical Instructions (RLC, RL, RR, RRC, CLR, SETB, ALR, RLC, CPL)
 Boolean Instructions (ANL, ORL)
 Program Control Transfer Instructions

In stiva sunt stocate variabilele temporare. Instructiunea PUSH pune date in stiva iar
instructiunea POP preia date din aceasta. Stiva este una de tip LIFO.

 Instructiunile de transfer de date muta datele dintr-o locatie in alta. Acest transfer
poate avea loc intre registrii si memorie (fie ea interna sau externa)

 Instructiunile aritmetice asigura operatiile de baza cum ar fi adunarea, scaderea,


inmultirea si impartirea, incrementarea si decrementarea.

 Instructiunile logice efectueaza operatii de tipul OR, AND, XOR, complement etc.

 Instructiunile booleene asigura operatiunile pe biti . Carry din SFR-ul PSW asigura
rolul acumulatorului pentru aceste operatii.

8051 suporta doua tipuri de instructiuni pentru transferul controlului:


 Instructiuni neconditionale transfera PC la o adresa specificata din memoria de
program (JMP, CALL, RET, RETI respectiv NOP)
 Instructiuni conditionale asigura transferul controlului bazand-une pe o conditie ce
trebuie indeplinita. (JZ – jump on Zero, JNZ – Jump on Non Zero, DJNZ – Decrement
and Jump if Non Zero, CJNE – Compare and Jump if Not Equal, JB – Jump if Bit is set,
JNB – Jump if Bit Not Set, JBC – Jump if Bit set and clear, JC – Jump if Carry respectiv
JNC.

Opcode – instructiune ce instruieste procesorul asupra operatiei ce trebuie sa o


indeplineasca
Operand/operanzi – parametrii necesari pentru executia unui opcode
Modul de adresare – specifica modalitatea in care operanzii sunt folositi in executia opcode-
ului
 Adresarea directa – Modalitatea de adresare prin care operandul este furnizat ca o
adresa de memorie

 Adresarea Indirecta : modalitate de adresare prin care locatia de memorie este


obtinuta indirect folosind unul dintre registrii

 Register Addressing: Modalitate de adresare prin care operandul este furnizat prin
intermediul registrilor

 Register Instructions : Instructiune in care operandul este oferit ca o parte a opcode-


ului

 Register Specific Instructions : Instructiuni ce opereaza doar asupra anumitor registrii.

 Adresarea Imediata : Modalitate de adresare prin care operandul este furnizat ca o


constanta

 Adresare Indexata: Modalitate de adresare prin care operandul este furnizat sub
forma unui index.

 Instructiuni de transfer de date: Acele instructiuni care copiaza datele dintr-o locatie
in alta.

 Stiva : memorie interna folosita pentru stocarea variabilelor

 PUSH – instructiunea de incarcare a datelor in stiva


 POP – instructiunea pentru preluarea datelor din stiva

 Instructiuni de transfer de date : instructiuni ce incarca date din memorie in


accumulator

 External Data Memory Instruction: instructiuni ce opereaza asupra memoriei


externe.

 Instructiuni Aritmetice : instructiuni ce ofera posibilitatea de a efectua operatii


aritmetice simple (adunare, scadere, inmultire, impartire, incrementare,
decrementare)

 Al 2'lea complement: reprezentare binara a numerelor folosita in operatia de


scadere.

 Binary Coded Decimal: reprezentare in binar a numerelor in baza 10 folosind digiti de


la 0 la 9.
 Unpacked BCD : un digit (0-9) reprezentat pe un singur octet

 Packed BCD : doi digiti reprezentati pe un singur octet (00-99)

 Instructiuni Logice: Instructiuni ce efectueaza logica operationala (RL, RR, RRC, RLC)

 Instructiuni Booleene: Instructiuni ce opereaza la nivel de bit, manipularea bitilor


(CLR, SETB, OR, XOR, AND, CPL)

S-ar putea să vă placă și