C2 Compiler Concepts

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Writing a compiler is a very good practice for learning how complex problems could be solved using methods from software engineering. It is extremely important to program rather carefully and exactly, because we have to remember that a compiler is a program which has to handle an input that is usually incorrect. Therefore, the compiler itself must be error-free. Referring to Niklaus Wirth, we postulate that the grammatical structure of a language must be reflected in the structure of the compiler. Thus, the complexity of a language determines the complexity of the compiler (cf. Compilerbau. B. G. Teubner Verlag, Stuttgart, 1986). This book is about the translation of programs written in a high level programming language into machine code. It deals with all the major aspects of compilation systems (including a lot of examples and exercises), and was outlined for a one session course on compilers. The book can be used both as a teacher's reference and as a student's text book. In contrast to some other books on that topic, this text is rather concentrated to the point. However, it treats all aspects which are necessary to understand how compilation systems will work. Chapter One gives an introductory survey of compilers. Different types of compilation systems are explained, a general compiler environment is shown, and the principle phases of a compiler are introduced in an informal way to sensitize the reader for the topic of compilers.

Author(s): Dr. Bernd Teufel, Dr. Stephanie Schmidt, Prof. Dr. Thomas Teufel (auth.)
Edition: 1
Publisher: Springer-Verlag Wien
Year: 1993

Language: English
Pages: 176
City: Wien
Tags: Programming Techniques; Software Engineering; Programming Languages, Compilers, Interpreters; Data Structures; Data Storage Representation; Mathematical Logic and Formal Languages

Front Matter....Pages i-xi
General Remarks on Compiler Theory....Pages 1-8
Formal Aspects....Pages 9-31
Lexical Analysis and Symbol Tables....Pages 32-56
Syntax Analysis and Parser Construction....Pages 57-99
Semantic and Type Analysis....Pages 100-117
How to Handle Errors....Pages 118-129
Code Generation and Optimization....Pages 130-152
Impacts of Modern Hardware Developments....Pages 153-158
Back Matter....Pages 159-176