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

Jednoduché překladače

Přihlášení do KOSu pro zápis předmětu Zobrazit rozvrh
Kód Zakončení Kredity Rozsah Jazyk výuky
01JEPR Z 2 2 česky
Přednášející:
Cvičící:
Zdeněk Čulík (gar.)
Předmět zajišťuje:
katedra matematiky
Anotace:

Lexikální a syntaktická analýza, generování kódu, jednoduché optimalizace, principy integrovaných vývojových prostředí, dynamické identifikace typů.

Požadavky:
Osnova přednášek:

1. Lexikální a syntaktická analýza zdrojových textů některých programovacích jazyků (Pascal, C++, Java)

2. Datové struktury používané pro uložení a zpracování výrazů, příkazů, typů a deklarací

3. Programy pro generování překladačů (Lex, Yacc, ANTLR)

4. Jednoduché optimalizace

5. Generování kódu, sestavování knihoven a proveditelných souborů

6. Principy integrovaných vývojových prostředí, vliv dynamické identifikace typů na vývojová prostředí

Osnova cvičení:

1. Příklad lexikální analýzy napsané v jazyce C

2. Ručně psaný sémantický analyzátor

3. Zpracování typů a deklarací, využití v programátorských vývojových prostředích

4. Generování sémantické analýzy s využitím programu ANTLR

5. Příklady jednoduchého generování kódu, přidělování registrů

6. Přídavné moduly pro překladače GCC a LLVM/CLang

Cíle studia:

Znalosti:

Struktura překladačů programovacích jazyků, generování strojového kódu, strojový překlad do jiného programovacího jazyka.

Schopnosti:

Naprogramovat syntaktickou a sémantickou analýzu jednoduchého programovacího jazyka s využitím moderních nástrojů pro zpracování gramatik.

Studijní materiály:

Povinná literatura:

[1] N. Wirth: Compiler Construction, Addison Wesley, 1996

Doporučená literatura:

[2] S. Pemberton, M. Daniels: Pascal Implementation: The P4 Compiler, Prentice Hall, 1983

[3] D. Grune, C. Jacobs: Parsing Techniques - A Practical Guide, Ellis Horwood, 1990

[4] http://www.antlr.org

Poznámka:
Rozvrh na zimní semestr 2018/2019:
Rozvrh není připraven
Rozvrh na letní semestr 2018/2019:
Rozvrh není připraven
Předmět je součástí následujících studijních plánů:
Platnost dat k 26. 3. 2019
Aktualizace výše uvedených informací naleznete na adrese http://bilakniha.cvut.cz/cs/predmet12073305.html