Interpret jazyka IFJ08
Autoři: J. Miklósy, V. Sák, R. Makudera, M. Nechvátal, R. Šebedovský
Součásti projektu
 Lexikální analýza
 Syntaktická a sémantická analýza
 Vestavěné funkce a hashovací ...
Lexikální analýza
 Deterministický konečný automat
 Vstupem je zdrojový soubor
 Výstupem jsou tokeny ...
Lexikální analýza
 Graf konečného automatu
4
Syntaktická analýza
 Spolu se sémantickou analýzou se podílí na syntaxí řízeném překladu
 Vstupem jsou token...
Syntaktická analýza
 Gramatika pro tvorbu LL-tabulky :
 LL- tabulka
6
Syntaktická analýza
 Gramatika pro výrazy
 Precedenční SA  Redukce výrazů pomocí zásobníku
...
Interpret
 Postupné zpracovávání instrukcí
 Vstupem je seznam instrukcí uložených v tří-adresném kódu
 ...
Hashovací tabulka
 Tabulka symbolů
 Pole lineárních seznamů
 Statická velikost hash tabulky je 1024
...
Funkce QuickSort
 Algoritmus pro seřazení symbolů v řetězci
 Řešený rekurzivně
 Využívá metodu rozdělení - par...
Boyer-Mooreův algoritmus
 Vyhledávací algoritmus pro vyhledání vzorku v řetězci
 Vzorek se porovnává zprava
 V...
Prostor pro dotazy
 Děkujeme za pozornost 
12
of 12

Interpret of language IFJ08

I worked on interpret language IFJ08 with my team.
Published on: Mar 4, 2016
Published in: Technology      Education      
Source: www.slideshare.net


Transcripts - Interpret of language IFJ08

  • 1. Interpret jazyka IFJ08 Autoři: J. Miklósy, V. Sák, R. Makudera, M. Nechvátal, R. Šebedovský
  • 2. Součásti projektu  Lexikální analýza  Syntaktická a sémantická analýza  Vestavěné funkce a hashovací tabulka  Interpret 2
  • 3. Lexikální analýza  Deterministický konečný automat  Vstupem je zdrojový soubor  Výstupem jsou tokeny nebo lexikální chyba 3
  • 4. Lexikální analýza  Graf konečného automatu 4
  • 5. Syntaktická analýza  Spolu se sémantickou analýzou se podílí na syntaxí řízeném překladu  Vstupem jsou tokeny  Ukládá instrukce do seznamu  LL-tabulka  Gramatika výrazů  Implementována metodou rekurzivního sestupu 5
  • 6. Syntaktická analýza  Gramatika pro tvorbu LL-tabulky :  LL- tabulka 6
  • 7. Syntaktická analýza  Gramatika pro výrazy  Precedenční SA  Redukce výrazů pomocí zásobníku  Implementováno precedenční  Definice gramatiky : tabulkou 7
  • 8. Interpret  Postupné zpracovávání instrukcí  Vstupem je seznam instrukcí uložených v tří-adresném kódu  typ instrukce (např. DIV, READ, NOT ...) • adresa vstupního operandu (op1) • adresa vstupního operandu (op 2) • adresa výstupního operandu (op 3) 8
  • 9. Hashovací tabulka  Tabulka symbolů  Pole lineárních seznamů  Statická velikost hash tabulky je 1024  Pomocí funkce hash se zjistí index pro uložení prvku  Ukládá informace o proměnných 9
  • 10. Funkce QuickSort  Algoritmus pro seřazení symbolů v řetězci  Řešený rekurzivně  Využívá metodu rozdělení - partition 10
  • 11. Boyer-Mooreův algoritmus  Vyhledávací algoritmus pro vyhledání vzorku v řetězci  Vzorek se porovnává zprava  Využívá dvě heuristiky  V případě nalezení vrací pozici, jinak vrací -1 11
  • 12. Prostor pro dotazy  Děkujeme za pozornost  12