Logo ČVUT
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE
STUDIJNÍ PLÁNY
2024/2025

Generování kódu

Předmět není vypsán Nerozvrhuje se
Kód Zakončení Kredity Rozsah Jazyk výuky
MI-GEN Z,ZK 4 2P+1C česky
Garant předmětu:
Přednášející:
Cvičící:
Předmět zajišťuje:
katedra teoretické informatiky
Anotace:

Studenti se seznámí s teoretickou i praktickou stránkou realizace zadní části optimalizujícího překladače programovacího jazyka.

Požadavky:

Principy překladu, grafové algoritmy.

Osnova přednášek:

1. Přehled konstrukcí programovacích jazyků.

2. Základní pojmy: typy, proměnné, kompatibilita typů a dynamické datové struktury.

3. Základní pojmy: aktivační záznam, volací konvence.

4. Vnitřní formy.

5. Přímé generování kódu, AST -> DAG ->BB.

6. Analýza DAG, BB, závislosti a antizávislosti.

7. Alokace registrů, alokace paměti (statická, na zásobníku).

8. Optimalizace mezikódu.

9. Generování kódu, výběr instrukcí.

10. Překlad jazyka zásobníkového počítače na nativní HW, HW závislé optimalizace.

11. Moduly a oddělený překlad.

12. Podpora pro ladění.

13. Generování kódu pro objektově orientované programovací jazyky.

Osnova cvičení:

1. Opakování - Základní datové typy.

2. Opakování - mezikódy a překlad základních programových struktur I.

3. Opakování - mezikódy a překlad základních programových struktur II.

4. Zadání semestrální práce.

5. AST -> DAG -> BB.

6. Alokace registrů.

7. Optimalizace nad mezikódem.

8. Výběr instrukcí I.

9. Výběr instrukcí II.

10. Další optimalizace.

11. Konzultace k semestrální práci.

12. Plánování instrukcí a pipeling.

13. Odevzdání a hodnocení semestrálních prací, zápočet.

Cíle studia:

Cílem předmětu je završit vzdělání v oblasti překladů a překladačů o základní principy konstrukce zadních částí (backend) překladače a metod optimalizace a generování kódu.

Studijní materiály:

Melichar, B. a kol. ''Konstrukce překladačů''. Praha: ČVUT, 1999. ISBN 80-01-02028-2.

Wirth, N. ''Compiler Construction''. Addison-Wesley, 1996. ISBN 0201403536.

Aho, A. V., Lam, M. S., Sethi, R., Ullman, J. D. ''Compilers: Principles, Techniques, and Tools (2nd Edition)''. Addison Wesley, 2006. ISBN 0321486811.

Poznámka:

Informace o předmětu a výukové materiály naleznete na https://courses.fit.cvut.cz/MI-GEN/

Další informace:
https://courses.fit.cvut.cz/MI-GEN/
Pro tento předmět se rozvrh nepřipravuje
Předmět je součástí následujících studijních plánů:
Platnost dat k 21. 11. 2024
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/cs/predmet1431006.html