X36PJP | Programovací jazyky a překladače | Rozsah výuky: | 2+2 | ||
---|---|---|---|---|---|
Přednášející (garant): | Müller K. | Typ předmětu: | Z | Zakončení: | Z,ZK |
Zodpovědná katedra: | 336 | Kreditů: | 5 | Semestr: | L |
Anotace:
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 realizovat překladač. Dále jsou probrány základní metody implementace datových typů, podprogramů a datových abstrakcí.
Osnovy přednášek:
1. | Přehled programovacích jazyků, programovací paradigmata | |
2. | Struktura překladače, virtuální počítač | |
3. | Konečné automaty a jejich programová realizace | |
4. | Návrh a realizace lexikálního analyzátoru | |
5. | Bezkontextové gramatiky a zásobníkové automaty | |
6. | LL(1) gramatiky | |
7. | Realizace syntaktické analýzy rekurzívním sestupem | |
8. | Překladové gramatiky a automaty | |
9. | L-atributové překladové gramatiky | |
10. | Překladač specifikovaný L-atributovou překladovou gramatikou | |
11. | Specifikace a implementace datových typů | |
12. | Specifikace a implementace podprogramů | |
13. | Specifikace a implementace datových abstrakcí | |
14. | Generování strojového kódu |
Osnovy cvičení:
1. | Syntaktické diagramy, BNF a EBNF | |
2. | Zadání semestrální práce | |
3. | Virtuální počítač | |
4. | Programová realizace konečného automatu | |
5. | Návrh a realizace lexikálního analyzátoru | |
6. | Bezkontextové gramatiky a zásobníkové automaty | |
7. | LL(1) gramatiky | |
8. | Rekurzívní sestup a transformace gramatik na LL(1) | |
9. | Překladové gramatiky a automaty | |
10. | L-atributované překladové gramatiky | |
11. | Příklad překladače specifikovaného L-atributovou překladovou gramatikou | |
12. | Příklad překladače specifikovaného L-atributovou překladovou gramatikou | |
13. | Implementace podprogramů | |
14. | Zápočet |
Literatura Č:
1. | Müller K,: Programovací jazyky. Vydavatelství ČVUT, Praha 2001 | |
2. | Melichar B., Češka M., Ježek K., Richta K.: Konstrukce překladačů. Vydavatelství ČVUT, Praha 1999 |
Literatura A:
1. | Pratt,T.W., Zelkowitz, M.V.: Programming Languages. Third Edition. Prentice Hall, London, 1999. | |
2. | Melichar,B., Holub,J., Muzatko,P.: Languages and Translations. Publishing House of CTU, Praha 1997. |
Požadavky:
Pro zápočet: vypracování semestrální práce a získání potřebného počtu bodů.
Pro zkoušku: získání zápočtu.
|
Předmět je zahrnut do těchto studijních plánů:
|
Stránka vytvořena 25. 2. 2002, semestry: Z/2001-2, Z/2002-3, L/2001-2, L/2002-3, připomínky k informační náplni zasílejte správci studijních plánů | Návrh a realizace: I. Halaška (K336), J. Novák (K336) |