Syntaktická analýza a překladače
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
NI-SYP | Z,ZK | 5 | 2P+1C | česky |
- Přednášející:
- Jan Janoušek (gar.)
- Cvičící:
- Jan Janoušek (gar.), Štěpán Plachý
- Předmět zajišťuje:
- katedra teoretické informatiky
- Anotace:
-
Předmět rozšiřuje znalosti základů teorie automatů, jazyků a formálních překladů. Studenti získají znalosti LR analýzy v jejích různých variantách a aplikacích, seznámí se se speciálními aplikacemi syntaktických analyzátorů, jako např. inkrementální a paralelní analýzou.
- Požadavky:
-
Znalost základů teorie formálních jazyků a překladů. Znalosti konečných a zásobníkových automatů, konstrukce LL analyzátoru a překladače řízeného LL analyzátorem.
- Osnova přednášek:
-
1. Rekapitulace základních pojmů, LL analýza a její varianty.
2. Klasifikace LR analyzátorů.
3. Silná LR(k) analýza.
4. Slabá LR(0) a SLR(1) analýza.
5. Slabá LALR(k) analýza a LR(k) analýza.
6. Překlad řízený LR analyzátorem.
7. Výpočet atributů při LR analýze.
8. LR atributový překlad.
9. Vnitřní forma.
10. Inkrementální LL analýza.
11. Inkrementální LR analýza.
12. Paralelní LL analýza.
13. Paralelní LR analýza.
- Osnova cvičení:
-
1. Opakování - konstrukce slabých a silných LL analyzátorů.
2. Opakování - LL analyzátor jako překladač.
3. Silná LR(k) analýza.
4. Slabá LR(0) analýza.
5. SLR(1) analýza.
6. LALR(k) analýza.
7. LR(k) analýza.
8. Překlad řízený LR analyzátorem.
9. Výpočet atributů při LR analýze, LR atributový překlad.
10. Inkrementální LL analýza.
11. Inkrementální LR analýza.
12. Paralelní LL analýza.
13. Paralelní LR analýza.
- Cíle studia:
-
Cílem předmětu je přinést znalosti, které je možno uplatnit při návrhu překladačů nebo jiných programových prostředků pro analýzu a zpracování strukturovaných textů.
- Studijní materiály:
-
Melichar, B. ''Jazyky a překlady''. Praha: ČVUT, 1996. ISBN 80-01-01511-4.
Melichar, B. ''Konstrukce překladačů''. Praha: ČVUT, 1999. ISBN 80-01-02028-2.
Melichar, B., Holub, J., Mužátko, P. ''Languages and Translations''. Praha: Publishing House of CTU, 1997. ISBN 80-01-01692-7.
Aho, A. V., Lam, M. S., Sethi, R., Ullman, J. D. ''Compilers: Principles, Techniques, and Tools (2nd Edition)''. Addison Wesley, 2006. ISBN 0321486811.
Grune, D., Jacobs, C. J. H. ''Parsing Techniques. A Practical Guide (2nd Edition)''. Springer, 2008. ISBN 038720248X.
- Poznámka:
-
Informace o předmětu a výukové materiály naleznete na https://moodle.fit.cvut.cz/courses/MI-SYP.16/
- Další informace:
- https://moodle.fit.cvut.cz/courses/MI-SYP.16/
- Rozvrh na zimní semestr 2020/2021:
-
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 St Čt Pá - Rozvrh na letní semestr 2020/2021:
- Rozvrh není připraven
- Předmět je součástí následujících studijních plánů:
-
- Bc. program Informatika, studijní plán pro fázi studia bez oboru, verze 2015 až 2020 (volitelný předmět)
- Bc. obor Bezpečnost a informační technologie, verze 2015 až 2020 (volitelný předmět)
- Bc. obor Teoretická informatika, verze 2015 až 2020 (volitelný předmět)
- Bc.obor Počítačové inženýrství, verze 2015 až 2020 (volitelný předmět)
- Bakalářský obor Informační systémy a management, verze 2015 až 2020 (volitelný předmět)
- Bakalářský obor Znalostní inženýrství, verze 2015, 2016 a 2017 (volitelný předmět)
- Bakalářský obor WSI, zaměření Softwarové inženýrství, verze 2015 až 2020 (volitelný předmět)
- Bakalářský obor WSI, zaměření Webové inženýrství, verze 2015 až 2020 (volitelný předmět)
- Bakalářský obor WSI, zaměření Počítačová grafika, verze 2015 až 2020 (volitelný předmět)
- Specializace Teoretická informatika, verze 2018 až 2019 (PS)
- Bakalářský obor Znalostní inženýrství, verze 2018 až 2020 (volitelný předmět)
- Počítačová bezpečnost, verze 2020 (VO)
- Návrh a programování vestavných systémů, verze 2020 (VO)
- Počítačové systémy a sítě, verze 2020 (VO)
- Manažerská informatika, verze 2020 (VO)
- Softwarové inženýrství, verze 2020 (VO)
- Systémové programování, verze 2020 (PS, VO)
- Webové inženýrství, verze 2020 (VO)
- Znalostní inženýrství, verze 2020 (VO)
- Specializace Teoretická informatika, verze 2020 (PS, VO)
- Magisterský program Informatika, plán pro studenty bez specializace, verze 2020 (VO)