MINISTERUL EDUCAȚIEI, CULTURII ȘI CERCETĂRII AL REPUBLICII MOLDOVA I.P CENTRUL DE EXCELENȚĂ ÎN ENERGETICĂ ȘI ELECTRONICĂ Catedra ” Sisteme informaţionale”
Raport Lucrarea de laborator nr. 3 La disciplina: Microprocesoare si Microcontrolere Tema: „Modurile de adresare ale procesorului Intel x86”
A efectuat elevul gr. AI-0115:
/________/ Deșcan Victor
A verificat profesorul:
/________/ Negară Eugeniu
Data prezentării: _______________
Chișinău 2019
1. Scopul lucrarii; In cadrul acestei lucrări se prezintă modurile de adresare permise de procesorul Intel x86. Partea aplicativă a lucrării are drept scop exersarea acestor mecanisme de adresare şi identificarea celor mai adecvate soluții de adresare a diferitelor structuri de date. 2. Considerații teoretice: 3. Moduri de adresare: Prin "mod de adresare" se înțelege un anumit mecaniam folosit pentru determinarea operanzilor unei instrucțiuni. Un anumit mod de adresare indică mecanismul de căutare a operandului și eventual model de calcul a adresei, dacă operandul se află în memorie. Mecanismul de adresare folosit influențează viteze de execuție a instrucțiunilor și determină lungimea acestora. Astfel mecanismele complexe de adresare necesită un timp de execuție mai mare însă oferă o mai mare flexibilitate în regăsirea datelor. 4. Adresarea Imediată: Adresarea imediată este cea mai simplă formă de adresare. Operandul este o constantă, care se păstrează în codul instrucțiunii. Astfel, odată cu citirea instrucțiunii are loc si citirea operandului. Constanta se poate exprima în zecimal (este forma implicită), în hexazecimal (cu terminația h), în binar (terminația b) sau sub formă de coduri ASCII. Constanta este întotdeauna al doilea operand al unei instructiuni. Exemple:
5. Adresarea de tip Registru: La această adresare operandul se află într-un regastru al procesorului. Acest mod este de fapt o formă mai eficientă de adresare directă. Eficienti se datorează mai multor factori: e registrii sunt în interiorul procesorului ceea ce elimină necesitatea unui transfer suplimentar cu memoria adresa unui registru se exprimă pe un număr redus de biți (8 registri - 3 biți), ceea ce contribuie la reducerea dimensiunii instrucțiunilor și implicit la o execuție mai rapidă a acestora • transferurile între registri se fac la o viteză mult mai mare deoarece se utilizează magistralele interne ale procesorului Exemple:
6. Adresarea directă: Adresarea directă presupune prezența adresei operandului în codul instrucțiunii. Operandul este o locație de memorie sau cu alte cuvinte o variabilă. Adresa operandului se poate exprima printr-o valoare sau printr-an nume simbolic dat variabilei. Pentru a evita confuzia cu adresarea imediată, valoarea adresei se plasează între paranteze påtrate. De altfel ori de câte ori se folosesc paranteze pătrate, continutul lor trebuie interpretat ca si o adresă și nu ca o constantă. Exemple:
7. Moduri de adresare indirectă : In cazul modurilor de adresare indirectă instructiunea nu contine operandul sau adrese acestuia ci o indicație asupra locului unde se află adresa operandului. De cele mai multe ori adresa se păstrează într-un registru sau se calculează ca o sumă de registri și eventual o constantă. Deşi inițial, la procesoarele 8086 (pe 16 bit) exista un număr restrâns de registri care puteau fi utilizati pentru a păstra aurese, si anume SI, DI pentru adresarea indexată și BX, BP pentru adresare bazată, începând cu procesoarele 80386 pot fi folosiți pentru adresare toți regiştrii generali pe 32 bit, EAX, EBX, ECX, EDX, ESI, EDI, EBP, ESP. Singura exceptie este că ESP nu se poate folosi ca index. Modurile de adresare indirectă la procesoarele Intel x86 sunt: adresarea indexată, adresarea bazat-indexată si adresarea scalat-indexată. Schema generală de adresare :
8.Mersul lucrării: 1) Am compilat un program care însumează salariile unor angajați.
2)Am tastat ,,EMULATE”:
3)Am tastat ,,RUN” și a primit reziltatul sumării:
9.Concluzie: În această lucrare de laborator am studiat modurile de adresare permise de procesorul Intel x86. Partea aplicativă a lucrării a avut drept scop exersarea acestor mecanisme de adresare şi identificarea celor mai adecvate soluții de adresare a diferitelor structuri de date.Am însușit că există 4 moduri de adresare acestea sunt :,, Adresarea Imediată, Adresarea de tip Registru ,Adresarea directă ,Moduri de adresare indirectă ” .La finele lucrarii am compilat un program care însumează salariile unor angajați.