Was macht ein lexikalischer Analysator?
Was macht ein lexikalischer Analysator?

Video: Was macht ein lexikalischer Analysator?

Video: Was macht ein lexikalischer Analysator?
Video: Vorlesung Compilerbau (2) - Lexikalische Analyse 2024, Kann
Anonim

Lexikalische Analyse ist die erste Phase eines Compilers. Es nimmt den modifizierten Quellcode von Sprachpräprozessoren, die sind in Form von Sätzen geschrieben. Die lexikalischer Analysator zerlegt diese Syntaxen in eine Reihe von Token, indem Leerzeichen oder Kommentare im Quellcode entfernt werden.

Welche Rolle spielt demnach der lexikalische Analysator?

Rolle des lexikalischen Analysators Lexikalischer Analysator führt folgende Aufgaben aus: Liest das Quellprogramm, scannt die Eingabezeichen, gruppiert sie in Lexeme und erzeugt das Token als Ausgabe. Scannen: Führt das Lesen von Eingabezeichen durch, entfernt Leerzeichen und Kommentare. Lexikalische Analyse : Token als Ausgabe erzeugen.

Welcher Compiler wird für die lexikalische Analyse verwendet? JavaCC ist der Standard Java Compiler-Compiler. Im Gegensatz zu den anderen in diesem Kapitel vorgestellten Werkzeugen ist JavaCC Parser und Scanner (Lexer)-Generator in einem. JavaCC benötigt nur eine Eingabedatei (die sogenannte Grammatikdatei), die dann verwendet wird, um beide Klassen für die lexikalische Analyse sowie für den Parser zu erstellen.

In ähnlicher Weise kann man fragen, was ist die Ausgabe des lexikalischen Analysators?

(ich) Die Ausgang von a lexikalischer Analysator ist Token. (II) Gesamtzahl der Token in printf("i=%d, &i=%x", i, &i); sind 10. (III) Die Symboltabelle kann unter Verwendung von Array, Hash-Tabelle, Baum und verknüpften Listen implementiert werden.

Welche Probleme gibt es bei der lexikalischen Analyse?

Probleme in der lexikalischen Analyse 1) Ein einfacheres Design ist die wichtigste Überlegung. Die Trennung von lexikalische Analyse von Syntax Analyse erlaubt uns oft, die eine oder andere dieser Phasen zu vereinfachen. 2) Die Compilereffizienz wird verbessert. 3) Die Portabilität des Compilers wird verbessert.

Empfohlen: