|
|
|
||
Poslední úprava: T_KSI (26.04.2005)
|
|
||
Poslední úprava: T_KSI (06.05.2004)
Aho, Sethi, Ullman: Compilers - Principles, Techniques and Tools, Addison-Wesley 1986 Chytil M.: Automaty a gramatiky, SNTL 1984 Melichar B.: Konstrukce překladačů. ČVUT 1999 Deransart, Jourdan, Lorho: Attribute grammars: definitions, systems and bibliography, Springer 1998 Muchnick, S.: Advanced Compiler Design and Implementation, Morgan Kaufmann 1997 Grune, Bal, Jacobs, Langendoen: Modern Compiler Design, Wiley 2000 |
|
||
Poslední úprava: T_KSI (06.05.2004)
Překladače programovacích jazyků, struktura překladače. Lexikální analýza: Konečné automaty, automatizované konstrukce, flex. Makroprocesory. Syntaktická analýza shora - silná a slabá LL(k). Rozšíření na regulární pravé strany. Syntaktická analýza zdola - LR(k), LALR(k), SLR(k), bison. Reprezentace textu stromem: Derivační a významový tvar stromu. Zapojení semantických akcí do syntaktické analýzy. Atributové gramatiky: Definice, klasifikace, jednoduše zleva-doprava k-průchodové gramatiky. Paměťové struktury překladače procedurálního jazyka: Potřebné druhy tabulek, organizace a některé implementace.
Struktura překladače. Účel mezikódu, charakter obsažených informací, artefakty obsažené v mezikódu. Reprezentace objektů, proměnné, pomocné proměnné, paměť, aliasing. Reprezentace procedury, control-flow, data-flow, základní bloky, rozsah platnosti proměnných. Tvar mezikódu: Trojice, čtveřice, strom, DAG, SSA. Generování mezikódu, překlad výrazů a programových struktur. Volací konvence, implementace jazyků s vnořenými procedurami. Alokace registrů. Klíčové vlastnosti moderních procesorů, generování kódu, scheduling. |