Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
ZveřejnilMartina Tomanová
1
Tým 32, varianta b/4/I
2
Jakub Kadlubiec Roman Pijáček Petr Pliska Jan Štourač Václav Tunka (vedoucí)
3
Interpret imperativního jazyka IFJ08 Podmnožina C++ Použití tříadresného kódu Implementováno v jazyce C ISO99
4
Řádkové komentáře Operace modulo Jednoduché zotavování z chyb Přehledné vypisování chyb Cyklus do… while Znakové konstanty ve stylu jazyka C Porovnávání mezi double a integer Deklarace více proměnných stejného typu na jednom řádku
5
Všechny datové struktury jsou generické Tabulka symbolů – Binární vyhledávací strom Řazení – Merge sort Vyhledávání - Boyer –Moorův algoritmus
7
Vstup: zdrojový kód Realizace pomocí konečného automatu, viz. dokumentace str. 16 Ukládá identifikátory a konstanty do tabulky symbolů Výstup: posloupnost tokenů
8
Jádro celého projektu Po dokončení syntaxí řízeného překladu je volán interpret Obsahuje: Obecný syntaktický analyzátor Výrazový syntaktický analyzátor Sémantický analyzátor Generátor tříadresného kódu
9
Vstup: jednotlivé tokeny SA shora dolů LL gramatika – str. 14 v dokumentaci Realizace pomocí rekurzivního sestupu Pokud je očekáván výraz, volá výrazový SA Má na starosti řídící konstrukce jazyka Výstup: validita zdrojového kódu
10
Vstup: Tokeny Precedenční analýza zdola nahoru Využívá zásobník Pokud je kód validní, iniciuje sémantické akce Neukládá na zásobník zarážky Výstup: Chybový kód / Výsledek výrazu
11
Spouštěn při sémantických akcích syntaktickým analyzátorem Kontroluje vícenásobné deklarace Kontroluje správnost datových typů Provádí přetypování identifikátorů a výrazů
12
Volán syntaktickými analyzátory a sémantickým analyzátorem Postupně generuje instrukce Instrukce průběžně ukládá do seznamu instrukcí Posledním prvkem syntaxí řízeného překladu
13
Provádí seznam instrukcí Pracuje s vstup / výstupními operacemi Vrací návratový kód programu
14
Vývojová metodika Strategie vývoje Project hosting Administrativa
15
Vyvíjeli jsme agilně Refaktoring KISS (Keep it simple, stupid) Vývoj po iteracích
16
Včasný začátek Vývoj po milnících Jednotné nástroje (Eclipse, OS linux) Kolektivní rozhodování a plánování Zhodnocení práce po každém týdnu
17
SCM: Subversion Mechanismus řízení projektu (milestones, tickets, tasks) Systém zpráv Projektová wiki Jednotné úložiště souborů
18
Pravidelné schůzky (2h / týden) Sumarizace a nahrávky schůzek Pravidelné code review rozsáhlejších prací za uplynulý týden
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.