Lookup, accept reduce 1 LR(0) Parser Beispielblatt Grammatik 1. Beginne mit State J 0 und Trage das erste Item aus Produktion 0 ein. Der Punkt des Items.

Slides:



Advertisements
Ähnliche Präsentationen
Sudoku Übersicht Spielregeln Strategien Knoch
Advertisements

Algebraische Zahlen: Exaktes Rechnen mit Wurzeln
Das LCA – Problem in Suffixbäumen
Wilhelm-Raabe-Schule Fachbereich: Mathematik Thema: Lineare Funktionen
Gliederung 1. Grundlagen der Bottom-Up-Syntaxanalyse
Martin Schneider, Folien von Prof. H.-P. Gumm
Suche in Texten (Stringsuche )
10. Kapitel: Syntaxanalyse (Parsing)
Kapitel 4 Syntaktische Analyse: LR Parsing.
Parser generieren Yet Another Compiler – Compiler YACC.
Alternativen und Muster. Alternativen Gegeben ist eine Tabelle in der ein Attribut der Tabelle Buecher Gruppe genannt wurde. So gibt es unter anderem.
CFGs und Kellerautomaten
Bestimmung des Next-Arrays im KMP-Algorithmus
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Gleichungen: Grundwissen
1. Warum ist „Kartenkunde“ für die Feuerwehr wichtig ?
Excel Kurs Teil III Zinsberechnungen ( Sparbuch, Entnahmeplan, Monatszins ) Das große 1 x 1 ( Berechnungen mit Namen, die Matrixformel ), Blattregister,
Rechnungserstellung Wenn Sie diese Präsentation (Rechnungserstellung.html) im Internet-Explorer ablaufen lassen wollen, so klicken Sie bitte auf das Leinwandsymbol.
SLR(1)-Parser Basiert auf LR(0)-Item-Mengen, wie LR(0)-Parser. Zusätzlich wird für Reduktionen bei Follow(X) als Vorschau- menge benutzt. LR(1)-Parser.
LL(1) Grammatiken Simple LL(1) ohne ε-Regeln verschiedene Produktionen, so gilt LL(1) ohne ε-Regeln verschiedene Produktionen, so gilt LL(1) mit ε-Regeln.
Wie macht man ein Sudoku? Transformations-Methode:
Kakuro Regeln und Strategien
Eine Bewerbung schreiben
Eine Bewerbung schreiben
Zylinder-Prisma-Schnitt
Anlegen von Ordnern, speichern und Öffnen von Bildern und Briefen
Wie man eine einfache Präsentation erstellt...
Cool ! Hier kommt eine kleine Rechenaufgabe, die bestimmt jeden überraschen wird! weiter mit (enter)
Auf Wunsch einer einzelnen Dame
Moin. Ich benutze PPT 2002 und möchte drei Bilder nacheinander 1
Sortieralgorithmen Sortieren von Arrays.
PowerPoint 2003 Objekt kopieren
Gleichungssysteme Galip Turan.
Exponentialgleichnungen
Syntaxanalyse Bottom-Up und LR(0)
11. Tabellen 11.1 Grundlegende Tabellenbearbeitung
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Klicken Sie in der Meldungsleiste auf Bearbeitung aktivieren,
Vorbesprechung Serie 9 Ax(ExR(x) Q(x)) wird identifiziert mit Ax(EzR(z) Q(x)) Skript S.101 & 102: ~AxP(x) Ex~P(x) ~ExP(x) Ax~P(x) Ax(P(x)/\Q(x)) AxP(x)
Die folgenden Seiten enthalten einige Vorschläge wie man die gegenwärtige Position im Vortrag markieren kann. Auf dem Master wird die Leiste mit den Punkten.
Hallo, ich habe dieses Forum gefunden und hoffe dass mit vielleicht hier jemand mit einem Animationsproblem helfen kann. Ich soll (als Hausaufgabe mehr.
Hallo Ich möchte einen Text einer Folie nicht einfach nur einfliegen lassen, sondern genau diesen Text, der schon an einer bestimmten Stelle steht, vergrößern.
Ziel Ergebnis Anleitung zum Erstellen einer „Anzeigetafel“
Nächste Folie Für eine Präsentation möchte ich Bilder so animieren, dass zuerst Text angezeigt wird, zum Text sollte anschließend ein passendes Bild erscheinen.
Anlegen von Ordnern, speichern und Öffnen von Bildern und Briefen
Klicken um fortzufahren! WWW – The World Wide Web Wie man im Internet nach Informationen sucht...
Datenreihen erzeugen –
Das ABC der Statistik DIE HÄUFIGKEITSTABELLEN 1
Schnelleinstieg Schnelleinstieg für bereits geschulte User zur Schulung OMDS-Einspielung in FinanzProfiT Bitte auf gewünschte Variante klicken oder weiterblättern….
Das ABC der Statistik DIE KREUZTABELLEN 1
Lösen von quadratischen Ungleichungen
Dieser nicht Fehler finden Algorithmus enthält einfach einen gravierenden welcher zu ist.
Noam CHOMSKY, Sheila GREIBACH
Zeilen- Spaltenschrift. Von Robert und Julian 1.Schritt: Denke dir ein geheimes Wort mit 5 Buchstaben. Denke dir ein geheimes Wort mit 5 Buchstaben.
Kursarbeit Informatik
1 Erstellung eines Lebenslaufes
Spesen richtig Abrechnen
Technische Informatik I Vorlesung 4: Vereinfachung von Schaltfunktionen Mirco Hilbert Universität Bielefeld Technische Fakultät.
Binärbäume.
Tabellen im Word Als erstes müsst ihr das Microsoft Word starten.
Reihenfolge der Operatoren
Arbeiten mit WordSmith 4. Inhalt 1. Arbeiten mit der Funktion Wortliste (im getaggten Korpus) 1. Arbeiten mit der Funktion Wortliste (im getaggten Korpus)
Lineare Optimierung Nakkiye Günay, Jennifer Kalywas & Corina Unger Jetzt erkläre ich euch die einzelnen Schritte und gebe Tipps!
Das ABC der Statistik DIE KREUZTABELLEN
Tabellengesteuerte Verfahren
gesucht ist die Geradengleichung
XX X XX X : X X X.
Zustandsdiagramme.
Schnittwinkel bestimmen
Aufgabe 1) Der Graph der Funktion
 Präsentation transkript:

lookup, accept reduce 1 LR(0) Parser Beispielblatt Grammatik 1. Beginne mit State J 0 und Trage das erste Item aus Produktion 0 ein. Der Punkt des Items steht damit zuvorderst. 2. Schliesse den State ab, indem du für jedes Vorkommen eines.X (X steht für ein beliebiges Nonterminal) diejenigen Items unten anhängst, die mit diesem Nonterminal beginnen. (z.Bsp. X  xY) 3. Ziehe für jedes Zeichen, das nach einem Punkt folgt einen Pfeil zu einem neuen State. Wenn genau dieses Item bereits bei einem bestehenden State zuoberst steht, dann wird der Pfeil zu diesem State gezogen. 4. Trage in den neuen State das Item ein, von welchem aus der Pfeil kommt und schiebe den Punkt um eine Stelle weiter. Wenn der Punkt hinter dem letzten Zeichen steht, dann ist der State abgeschlossen. 5. Wiederhole diesen Vorgang solange, bis keine neuen States mehr entstehen.. Automat Stack-Beispiel 1. Beginne bei State 0 des Automaten und trage für jeden weggehenden Pfeil, der ein Terminal entält, in der entsprechenden Spalte der Tabelle einen Shift s x ein. Die Nummer x ist die Nummer des States, zu dem der Pfeil hinzeigt. 2. Falls durch einen Pfeil ein Non-Terminal von einem State weggeht, so trage die Nummer des States wo der Pfeil hinzeigt, im Goto-Teil der Tabelle ein. 3. Falls kein Pfeil von diesem State wegzeigt, so Trage in der Tabelle auf der ganzen Zeile des Action-Teils eine Reduktion r x ein. Die Nummer x ist die Zeilennummer der Grammatik, bei der diejenige Produktion steht, welche in diesem State drinsteht. (Bsp. beim State J 8 wäre es die Produktion 4) Shift-Operationen: s x Reduce-Operationen: r x J0J0 x,x)$ J0J0 (J2J2 x,x)$ ( J0J0 (J2J2,x)$ xJ1J1 J0J0 (J2J2 xJ1J1,x)$ shift 2 shift 1 reduce 2 J0J0 (J2J2 S,x)$ Christian Moser 24. April 2003 J6J6 J0J0 (J2J2 SJ6J6 J0J0 (J2J2 L,x)$ J4J4,x)$,J7J7 J0J0 (J2J2 L J4J4 x)$ J0J0 (J2J2 L J4J4,J7J7 x J1J1 )$ J0J0 (J2J2 L J4J4,J7J7 )$ S J0J0 (J2J2 L J4J4,J7J7 x J1J1 J8J8 )$ S J0J0 (J2J2 L J4J4,J7J7 J8J8 )$ J0J0 (J2J2 L J4J4 )$ stackinputaction begin state lookup reduce 3 state lookup shift 7 shift 1 reduce 2 state lookup reduce 4 state lookup 1. Es liegt bereits J 0 auf dem Stack 2. Man schaut in der Parsetabelle was bei der Zeile (gegeben durch den Status zuoberst auf dem Stack) und der Spalte gegeben durch das vorderste Inputsymbol) für eine Operation ansteht und führt diese aus. Shift: Bei einem Shift s x wird zuerst das vorderste Inputsymbol, dann der neue Status (Bsp. J 3 bei einer Operation s 3 ) auf den Stack geshiftet. Reduce: 1. Bei einem Reduce r x werden doppelt so viele Einträge vom Stack gestrichen, wie die Produktion x Zeichen auf der rechten Seite des Pfeils hat. (Die Nummer x ist die Zahl der Reduktion Bsp. r 5 ) 2. Danach wird das Nontermimal, das auf der linken Seite dieser Produktion steht auf den Stack geshiftet. 3. Im Goto-Teil der Tabelle wird nun anhand des Status der zuoberst auf dem Stack liegt und des Nonterminals aus Punkt 2 der neue Status herausgelesen und eben- falls auf den Stack geshiftet. 3. Wenn in der Tabelle kein Eintrag vorhanden ist, dann ist der String ungültig. Wenn der Eintrag „accept“ erreicht wird, so war das Parsen erfolgreich. J0J0 (J2J2 L J4J4 )J5J5 J0J0 (J2J2 L J4J4 )J5J5 $ $ shift 5 Parsetabelle J0J0 $ S J3J3

SLR Parser Beispielblatt Christian Moser 24. April 2003 Grammatik Automat Das Erstellen des SLR-Automats verläuft genau gleich wie beim LR(0)-Parser. Erstellen der Parsetabelle Reduktionen werden nur in die Spalten eingetragen, bei denen das Zeichen im Follow-Set der linken Seite der zu Reduktion vorkommt …das ist der einzige Unterschied zum LR(0)-Parser. Beispiel: Parsetabelle

LR(1) Parser Beispielblatt Christian Moser 24. April 2003 Automat Parsetabelle Abschluss Um den Lookahead zu bestimmen, muss aus den Zeichen hinter dem.Nonterminal das First-Set bestimmt werden. Die darin enthaltenen Zeichen kommen in den Lookahead der eingefügten Items. LALR-Parser Für den LALR-Parser wird am besten zuerst ein LR(1) Automat konstruiert. Danach werden die Zustände, welche die selben Items enthalten und sich nur durch die Lookaheads unterscheiden zu einem zusammengefasst. Der neue Lookahead ist die Vereinigungsmenge der beiden ursprünglichen Zustände.