Compiler

Was wird häufig verwendet, um die Regeln zur Erkennung von Token in der lexikalischen Analyse auszudrücken?

  1. ARundungsregeln für Gleitkommazahlen
  2. BReguläre Ausdrücke und die sie verarbeitenden endlichen Automaten
  3. CErsetzungsregeln für Caches
Antwort und Erläuterung anzeigen

Antwort: B. Reguläre Ausdrücke und die sie verarbeitenden endlichen Automaten

Die Token-Arten lassen sich mit regulären Ausdrücken knapp schreiben, etwa Bezeichner als „beginnt mit einem Buchstaben, gefolgt von Buchstaben und Ziffern“ oder Zahl als „eine oder mehrere Ziffern“. Reguläre Ausdrücke lassen sich in endliche Automaten (Maschinen mit endlicher Zustandszahl) umwandeln, die allein durch Zustandsübergänge beim Lesen jedes Zeichens Token in einer zur Eingabelänge proportionalen Zeit herausschneiden. Daher werden lexikalische Analysatoren oft mit Werkzeugen gebaut, die sie automatisch aus regulären Ausdrücken erzeugen. Rundungs- und Cache-Regeln haben mit lexikalischer Analyse nichts zu tun.

Dieses Thema üben Zur Themenseite

Weitere Fragen zu Compiler

  1. Welche Grammatikart dient zur Beschreibung der Grammatik vieler Programmiersprachen und bildet die Grundlage der Syntaxanalyse?
  2. Welche Gestalt des abstrakten Syntaxbaums für den Ausdruck 2 + 3 * 4 ist richtig?
  3. Welche Eigenschaft des Dreiadresscodes (Three-Address Code), einer Form der Zwischendarstellung, ist richtig?
  4. Was wird bei der Lebendigkeitsanalyse (Liveness Analysis), die als Vorbereitung der Registerzuteilung durchgeführt wird, ermittelt?
  5. In einer Funktion ist die Zahl gleichzeitig lebendiger Werte an der ungünstigsten Stelle 5. Wie viele Register werden mindestens benötigt, um alle Werte ohne Spill in Registern zu halten, wenn der Interferenzgraph in einem einfachen Fall keine weiteren Einschränkungen außer diesen 5 erzeugt?

Vergleiche zu diesem Thema