6. Sem. PI Codierung & Compilerbau
Unterlagen Codierung
Folien Codierung
.
Unterlagen Compilerbau
Skript:
Kapitel 11 "Compilerbau" in diesem Skript
.
Beispielcode zu Compilerbau:
Ein einfacher
Taschenrechner (
ogp.c
)
:
Handgeschriebener, tabellengesteuerter, nichtrekursiver Shift-Reduce-Parser (OGP).
Lexer, Parser und Auswertung des Syntax-Baumes schön getrennt.
... und dasselbe mit Trace-Ausgaben für die Abarbeitung von Input und Stack:
ogp-trace.c
Unterlagen & Beispiel für Lex & Yacc:
Hier
und
hier
gibt es zwei Tutorials zu
lex
und
yacc
.
Hier gibt es die offiziellen Manuals für
flex
(GNU
lex
)
und
bison
(GNU
yacc
)
.
Die Files des Beispiels, das wir in der Stunde live gemacht haben (einfacher Taschenrechner):
cal.lex
(
lex
-File)
cal.y
(
yacc
-File)
global.h
(gemeinsamer Header-File)
build.sh
(Shell-Skript zum Compilieren)
Übung:
Syntax-Analyse: Rekursiver Taschenrechner
.
Programm zum Vervollständigen:
rechner-angabe.c
Musterlösung:
rechner.c
.
Dasselbe mit Trace-Ausgaben:
rechner-trace.c
.
Home