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

Programovací jazyky a 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
BI-PJP Z,ZK 5 2P+1C česky
Přednášející:
Jan Janoušek (gar.)
Cvičící:
Radomír Polách, Jan Trávníček
Předmět zajišťuje:
katedra teoretické informatiky
Anotace:

Studenti budou umět základní metody implementace běžných programovacích jazyků. Získají zkušenost s návrhem a implementací překladu jednotlivých konstruktů programovacích jazyků (datové typy, podprogramy, apod). Naučí se formálně specifikovat překlad textu, který vyhovuje určité syntaxi, do cílové formy a na základě této specifikace napsat překladač. Překladačem se zde rozumí nejen překladač programovacího jazyka, ale jakýkoliv jiný program analyzující a zpracovávající text zapsaný v jazyku, který je dán LL(1) gramatikou.

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

1. Přehled programovacích jazyků, programovací paradigmata. Struktura překladače, virtuální počítač.

2. Návrh a realizace lexikálního analyzátoru.

3. LL(1) gramatiky, transformace BG na LL(1).

4. Realizace syntaktické analýzy rekurzívním sestupem.

5. Překladové gramatiky a zásobníkové překladové automaty.

6. Atributové překladové gramatiky.

7. Vnitřní formy programu, překlad a vyhodnocení výrazů.

8. Překlad do jazyka zásobníkového počítače.

9. Překlad do syntaktického stromu.

10. Specifikace a implementace datových typů.

11. Překlad typických jazykových konstrukcí.

12. Specifikace a implementace podprogramů.

13. Specifikace a implementace datových abstrakcí.

Osnova cvičení:

1. Návrh a realizace lexikálního analyzátoru.

2. Realizace syntaktické analýzy rekurzívním sestupem.

3. Atributové překladové gramatiky.

4. Překlad do jazyka zásobníkového počítače.

5. Překlad do syntaktického stromu.

6. [2] Konzultace k domácí práci.

Cíle studia:

Předmět obsahuje přehled obecných rysů programovacích jazyků a výklad základních metod jejich implementace. Návrh a programová realizace jednotlivých částí překladače jsou podloženy základní teorií gramatik a automatů. Pro ilustraci metod je zaveden jednoduchý programovací jazyk a navržen a realizován překladač. Dále jsou probrány základní metody implementace datových typů, podprogramů a datových abstrakcí.

Studijní materiály:

1. Müller, K. Programovací jazyky. Praha: ČVUT, 2002. ISBN 80-01-02458-X.

2. Nešvera, Š. Programovací jazyky: cvičení. Praha: ČVUT, 2002. ISBN 80-01-02522-5.

Poznámka:

Rozsah=prednasky+proseminare+cviceni:2p+1c

Rozvrh na zimní semestr 2018/2019:
Rozvrh není připraven
Rozvrh na letní semestr 2018/2019:
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Po
Út
místnost TH:A-s135
Janoušek J.
12:45–14:15
(přednášková par. 1)
Thákurova 7 (FSv-budova A)
As135
místnost TH:A-1242
Polách R.
14:30–16:00
SUDÝ TÝDEN

(přednášková par. 1
paralelka 101)

Thákurova 7 (FSv-budova A)
místnost TH:A-1242
Polách R.
14:30–16:00
LICHÝ TÝDEN

(přednášková par. 1
paralelka 102)

Thákurova 7 (FSv-budova A)
St
Čt

Předmět je součástí následujících studijních plánů:
Platnost dat k 19. 5. 2019
Aktualizace výše uvedených informací naleznete na adrese http://bilakniha.cvut.cz/cs/predmet1123106.html