This shows you the differences between two versions of the page.
ac-is:lab:lab06 [2021/11/07 21:31] alexandru.predescu |
ac-is:lab:lab06 [2023/11/25 19:33] (current) teodor.dicu [Resurse] |
||
---|---|---|---|
Line 123: | Line 123: | ||
După cum se poate observa, cea de-a doua operație aritmetică este ADC, adică adunare cu transport (carry). Semnificația este următoarea: dacă de la operația anterioară de adunare a apărut transport, acest transport va trebui propagat în octeții superiori. Astfel, operația ADD, în cazul în care a apărut transport, setează bitul T din registrul IND. Operația ADC realizează suma între operanzi, dar include în calcul și acest bit de transport. | După cum se poate observa, cea de-a doua operație aritmetică este ADC, adică adunare cu transport (carry). Semnificația este următoarea: dacă de la operația anterioară de adunare a apărut transport, acest transport va trebui propagat în octeții superiori. Astfel, operația ADD, în cazul în care a apărut transport, setează bitul T din registrul IND. Operația ADC realizează suma între operanzi, dar include în calcul și acest bit de transport. | ||
- | Un alt exemplu este saltul condiționat. O instrucțiune de tip «if (a=2)» se va implementa astfel: | + | Un alt exemplu este saltul condiționat. O instrucțiune de tip «if (a==2)» se va implementa astfel: |
<code asm> | <code asm> | ||
CMP RA,2 | CMP RA,2 | ||
Line 336: | Line 336: | ||
* //Hint:// Pentru declararea array-urilor multidimensionale revedeți [[.:lab03#Tipul reg| laboratorul 3]]. | * //Hint:// Pentru declararea array-urilor multidimensionale revedeți [[.:lab03#Tipul reg| laboratorul 3]]. | ||
- **(3p)** Implementați în unitatea de comandă etapa de //fetch// a execuției unei instrucțiuni. | - **(3p)** Implementați în unitatea de comandă etapa de //fetch// a execuției unei instrucțiuni. | ||
+ | |||
+ | {{ :ac-is:lab:lab06:fetch.png?200 | Diagrama de stări}} | ||
+ | |||
/* * Semnalele ''oe'' și ''we'' reprezintă //Output Enable//, respectiv //Write Enable//. | /* * Semnalele ''oe'' și ''we'' reprezintă //Output Enable//, respectiv //Write Enable//. | ||
Line 368: | Line 371: | ||
===== Resurse ===== | ===== Resurse ===== | ||
* {{.:lab06:lab6_skel.zip|Schelet de cod}} | * {{.:lab06:lab6_skel.zip|Schelet de cod}} | ||
- | * {{.:lab06:sol:lab6_sol.zip|Soluție laborator}} (disponibilă începând cu 09.11.2019) | ||
* <html><a class="media mediafile mf_pdf" href="/ac/wiki/lab/lab06?do=export_pdf">PDF laborator</a></html> | * <html><a class="media mediafile mf_pdf" href="/ac/wiki/lab/lab06?do=export_pdf">PDF laborator</a></html> | ||
* {{..:resurse:cheat-sheet.pdf|Cheat-sheet calculator didactic}} | * {{..:resurse:cheat-sheet.pdf|Cheat-sheet calculator didactic}} | ||
* {{..:resurse:ac5.pdf|Arhitectura calculatorului didactic}} | * {{..:resurse:ac5.pdf|Arhitectura calculatorului didactic}} | ||
* <html><a class="media mediafile mf_pdf" href="https://ocw.cs.pub.ro/courses/ac-is/lab/lab06?do=export_pdf">PDF laborator</a></html> | * <html><a class="media mediafile mf_pdf" href="https://ocw.cs.pub.ro/courses/ac-is/lab/lab06?do=export_pdf">PDF laborator</a></html> | ||
+ | * {{.:lab06:sol:lab6_sol.zip|Soluție laborator}} | ||
- | + | <ifauth @ac-is> | |
- | <ifauth @user> | + | |
---- | ---- | ||
+ | * {{.:lab06:sol:lab6_sol.zip|Soluție laborator}} | ||
* [[ac-is:internal:guidelines|Ghid asistent]] | * [[ac-is:internal:guidelines|Ghid asistent]] | ||
</ifauth> | </ifauth> | ||