Syntaktická analýza a překladače
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
NI-SYP | Z,ZK | 5 | 2P+1C | anglicky |
- Garant předmětu:
- Jan Janoušek
- Přednášející:
- Jan Janoušek
- Cvičící:
- Jan Janoušek, Š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 2024/2025:
-
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 2024/2025:
- Rozvrh není připraven
- Předmět je součástí následujících studijních plánů:
-
- Bc. program Informatika, pro fázi studia bez oboru, 2015-2020 (volitelný předmět)
- Bc. obor Bezpečnost a informační technologie, 2015-2020 (volitelný předmět)
- Bc. obor Teoretická informatika, 2015-2020 (volitelný předmět)
- Bc. obor Počítačové inženýrství, 2015-2020 (volitelný předmět)
- Bc. obor Informační systémy a management, 2015-2020 (volitelný předmět)
- Bc. obor Webové a softwarové inženýrství, zaměření Softwarové inženýrství, 2015-2020 (volitelný předmět)
- Bc. obor Webové a softwarové inženýrství, zaměření Webové inženýrství, 2015-2020 (volitelný předmět)
- Bc. obor Webové a softwarové inženýrství, zaměření Počítačová grafika, 2015-2020 (volitelný předmět)
- Mgr. specializace Teoretická informatika, 2018-2019 (PS)
- Bc. obor Znalostní inženýrství, 2018-2020 (volitelný předmět)
- Mgr. specializace Počítačová bezpečnost, 2020 (volitelný předmět)
- Mgr. specializace Návrh a programování vestavných systémů, 2020 (volitelný předmět)
- Mgr. specializace Počítačové systémy a sítě, 2020 (volitelný předmět)
- Mgr. specializace Manažerská informatika, 2020 (volitelný předmět)
- Mgr. specializace Softwarové inženýrství, 2020 (volitelný předmět)
- Mgr. specializace Systémové programování, verze od 2020 (PS, volitelný předmět)
- Mgr. specializace Webové inženýrství, 2020 (volitelný předmět)
- Mgr. specializace Znalostní inženýrství, 2020 (volitelný předmět)
- Mgr. specializace Teoretická informatika, 2020 (PS, volitelný předmět)
- Mgr. program, pro fázi studia bez specializace, ver. pro roky 2020 a vyšší (VO)
- Bc. specializace Informační bezpečnost, 2021 (volitelný předmět)
- Bc. specializace Manažerská informatika, 2021 (volitelný předmět)
- Bc. specializace Počítačová grafika, 2021 (volitelný předmět)
- Bc. specializace Počítačové inženýrství, 2021 (volitelný předmět)
- Bc. program, pro fázi studia bez specializace, 2021 (volitelný předmět)
- Bc. specializace Webové inženýrství, 2021 (volitelný předmět)
- Bc. specializace Umělá inteligence, 2021 (volitelný předmět)
- Bc. specializace Teoretická informatika, 2021 (volitelný předmět)
- Bc. specializace Softwarové inženýrství, 2021 (volitelný předmět)
- Bc. specializace Počítačové systémy a virtualizace, 2021 (volitelný předmět)
- Bc. specializace Počítačové sítě a Internet, 2021 (volitelný předmět)
- Study plan for Ukrainian refugees (volitelný předmět)
- Master Specialization Digital Business Engineering, 2023 (VO)
- Mgr. specializace Systémové programování, verze od 2023 (PS, volitelný předmět)
- Mgr. specializace Teoretická informatika, 2023 (PS, volitelný předmět)
- Bc. specializace Informační bezpečnost, 2024 (volitelný předmět)
- Bc. program, pro fázi studia bez specializace, 2024 (volitelný předmět)
- Bc. specializace Manažerská informatika, 2024 (volitelný předmět)
- Bc. specializace Počítačová grafika, 2024 (volitelný předmět)
- Bc. specializace Softwarové inženýrství, 2024 (volitelný předmět)
- Bc. specializace Webové inženýrství, 2024 (volitelný předmět)
- Bc. specializace Počítačové sítě a Internet, 2024 (volitelný předmět)
- Bc. specializace Počítačové inženýrství, 2024 (volitelný předmět)
- Bc. specializace Počítačové systémy a virtualizace, 2024 (volitelný předmět)
- Bc. specializace Umělá inteligence, 2024 (volitelný předmět)
- Bc. specializace Teoretická informatika, 2024 (volitelný předmět)