Uwe Meyer

Grundkurs Compilerbau

eBook Ausgabe. 2. Auflage
eBook (epub), 431 Seiten
EAN 9783836296731
Veröffentlicht August 2024
Verlag/Hersteller Rheinwerk eBooks

Auch erhältlich als:

Buch (Softcover)
29,90
29,90 inkl. MwSt.
Teilen
Beschreibung

Compiler anschaulich und modern erklärt Ein Compiler sorgt dafür, dass der Quellcode eines Programms so übertragen wird, dass ein Computer in der Lage ist, die Anweisungen zu verstehen und auszuführen. Der Compilerbau ist eine der ältesten Disziplinen der Informatik, ohne Compiler gäbe es keine Programmiersprachen, Frameworks oder Anwendungen. In diesem Fachbuch aus der Reihe 'Informatik verstehen' lernen Sie, wie Compiler funktionieren, und machen sich mit dem Fundament der Programmiersprachen vertraut. Prof. Uwe Meyer forscht zu Anwendungen des Compilerbaus. In seinem Buch bereitet er Ihnen die Grundlagen und die Funktionsweise des Compilerbaus modern und zeitgemäß auf. Mit großem Sachverstand führt er Sie an den Bau eines eigenen Compilers heran. Dabei vermittelt er Ihnen alle Grundlagen, von den Begriffsdefinitionen, Paradigmen und Konzepten der Programmiersprachen bis hin zur Generierung von Assemblercode und seiner Optimierung. Übungen und Codebeispiele helfen Ihnen dabei, das Gelernte schnell in die Praxis umzusetzen und Ihr Wissen zu vertiefen. Durch seine Tätigkeit an einer Technischen Hochschule ist der Autor bestens mit den Lernherausforderungen von Studierenden vertraut - dieses Buch dient Ihnen daher auch als hilfreicher Vorlesungsbegleiter!- Lexikalische, syntaktische, semantische Analyse- Assemblercode generieren und optimieren- Ideal zum Selbststudium und für die Vorlesung Aus dem Inhalt:- Sprache und Compiler- Konzepte und Paradigmen von Programmiersprachen- Lexikalische Analyse- Syntaxanalyse- Semantische Analyse- Variablenallokation- Code generieren- Code optimieren- Ausblick und Forschungsfragen

Portrait

Professor Uwe Meyer leitet das Institut für Programmiersprachen und ihrer Anwendung an der Technischen Hochschule Mittelhessen in Gießen. Er gibt dort u. a. Veranstaltungen zum Compilerbau und verteilte Systeme. In der Lehre ist ihm die enge Verbindung von Praxis und Theorie besonders wichtig. Sein Forschungsschwerpunkt ist die Anwendungen des Compilerbaus für reversible Sprachen.

Inhaltsverzeichnis


Materialien zum Buch ... 12
Vorwort ... 13
1. Einleitung ... 15
1.1 ... Compiler und Sprache ... 15
1.2 ... Aufbau dieses Buches ... 19
2. Grundbegriffe der Programmiersprachen ... 29
2.1 ... Paradigmen ... 30
2.2 ... Konzepte der Programmiersprachen ... 37
2.3 ... Die Beispielsprache SPL ... 63
2.4 ... Zusammenfassung ... 76
2.5 ... Übungsaufgaben ... 77
3. Lexikalische Analyse ... 79
3.1 ... Einleitung ... 79
3.2 ... Lexikalische Elemente ... 80
3.3 ... Reguläre Ausdrücke ... 82
3.4 ... Endliche Automaten ... 90
3.5 ... Scanner-Generatoren ... 114
3.6 ... Zusammenfassung ... 129
3.7 ... Übungen ... 129
4. Syntaxanalyse ... 133
4.1 ... Einleitung ... 133
4.2 ... Grammatiken ... 135
4.3 ... Pumping-Lemma für reguläre Sprachen ... 143
4.4 ... Backus-Naur-Form ... 146
4.5 ... Ableitungsbäume ... 148
4.6 ... Top-Down-Parser ... 153
4.7 ... Bottom-Up-Parser ... 176
4.8 ... Fehlerbehandlung ... 200
4.9 ... Parsergeneratoren ... 201
4.10 ... Zusammenfassung ... 220
4.11 ... Übungen ... 222
5. Abstrakter Syntaxbaum ... 225
5.1 ... Einleitung ... 225
5.2 ... Attributierte Grammatiken ... 227
5.3 ... Erzeugung des AST für SPL ... 235
5.4 ... Zusammenfassung ... 250
5.5 ... Übungen ... 251
6. Semantische Analyse ... 253
6.1 ... Einleitung ... 253
6.2 ... Namensanalyse ... 255
6.3 ... Typanalyse ... 283
6.4 ... Semantische Analyse komplett ... 295
6.5 ... Vorgehen ... 296
6.6 ... Zusammenfassung ... 297
6.7 ... Übungen ... 299
7. Variablenallokation ... 301
7.1 ... Einleitung ... 301
7.2 ... Aktivierungsrahmen ... 303
7.3 ... Umsetzung im SPL-Compiler ... 318
7.4 ... Dynamische Speicherverwaltung ... 320
7.5 ... Erweiterungen für andere Sprachen ... 326
7.6 ... Zusammenfassung ... 331
7.7 ... Übungen ... 332
8. Codegenerierung ... 335
8.1 ... Einleitung ... 335
8.2 ... Ziel-Hardware ... 336
8.3 ... ECO32 ... 337
8.4 ... Codemuster ... 344
8.5 ... Umsetzung im SPL-Compiler ... 363
8.6 ... Zusammenfassung ... 364
8.7 ... Übungen ... 366
9. Optimierung ... 369
9.1 ... Einleitung ... 369
9.2 ... Grundlagen für die Optimierung ... 372
9.3 ... Kontrollflussanalyse ... 374
9.4 ... Datenflussanalyse ... 383
9.5 ... Lokale und globale Optimierungen ... 389
9.6 ... Schleifenoptimierungen ... 392
9.7 ... Sonstige Optimierungen ... 396
9.8 ... Static-Single-Assignment ... 405
9.9 ... Zusammenfassung ... 409
9.10 ... Übungen ... 411
10. Ausblick ... 413
10.1 ... AOT und JIT ... 413
10.2 ... Forschungsfelder im Compilerbau ... 414
Literaturverzeichnis ... 417
Index ... 425

Technik
Sie können dieses eBook zum Beispiel mit den folgenden Geräten lesen:
• tolino Reader 
Laden Sie das eBook direkt über den Reader-Shop auf dem tolino herunter oder übertragen Sie das eBook auf Ihren tolino mit einer kostenlosen Software wie beispielsweise Adobe Digital Editions. 
• Sony Reader & andere eBook Reader 
Laden Sie das eBook direkt über den Reader-Shop herunter oder übertragen Sie das eBook mit der kostenlosen Software Sony READER FOR PC/Mac oder Adobe Digital Editions auf ein Standard-Lesegeräte. 
• Tablets & Smartphones 
Möchten Sie dieses eBook auf Ihrem Smartphone oder Tablet lesen, finden Sie hier unsere kostenlose Lese-App für iPhone/iPad und Android Smartphone/Tablets. 
• PC & Mac 
Lesen Sie das eBook direkt nach dem Herunterladen mit einer kostenlosen Lesesoftware, beispielsweise Adobe Digital Editions, Sony READER FOR PC/Mac oder direkt über Ihre eBook-Bibliothek in Ihrem Konto unter „Meine eBooks“ -  „online lesen“.
 
Bitte beachten Sie, dass die Kindle-Geräte das Format nicht unterstützen und dieses eBook somit nicht auf Kindle-Geräten lesbar ist.
Hersteller
Libri GmbH
Friedensallee 273

DE - 22763 Hamburg

E-Mail: GPSR@libri.de

Website: www.libri.de