Title Details: | |
Compilers |
|
Other Titles: |
An introductory approach |
Authors: |
Georgouli, Katerina |
Subject: | MATHEMATICS AND COMPUTER SCIENCE > COMPUTER SCIENCE > PROGRAMMING LANGUAGES MATHEMATICS AND COMPUTER SCIENCE > COMPUTER SCIENCE > PROGRAMMING LANGUAGES > PROGRAMME REPRESENTATION MATHEMATICS AND COMPUTER SCIENCE > COMPUTER SCIENCE > PROGRAMMING LANGUAGES > LANGUAGE TRANSLATION AND EXECUTION MATHEMATICS AND COMPUTER SCIENCE > COMPUTER SCIENCE > PROGRAMMING LANGUAGES > SYNTAX ANALYSIS MATHEMATICS AND COMPUTER SCIENCE > COMPUTER SCIENCE > PROGRAMMING LANGUAGES > COMPILER SEMANTIC ANALYSIS MATHEMATICS AND COMPUTER SCIENCE > COMPUTER SCIENCE > PROGRAMMING LANGUAGES > CODE GENERATION MATHEMATICS AND COMPUTER SCIENCE > COMPUTER SCIENCE > PROGRAMMING LANGUAGES > STATIC ANALYSIS |
Keywords: |
Compiler
Interpreter Translation Formal languages Programming languages Context-free grammars Scanning Parsing Semantics Intermediate code Code generation Code optimization Symbol table Error handling Lexical analyzer generators Syntax analyzer generators Grammars |
Description: | |
Abstract: |
In this undergraduate textbook, a brief presentation of the operation of languages translators in general and of programming language compilers in particular is attempted at first. Then, in Chapter 2, regular languages and the grammars that describe them are introduced with a focus on describing regular languages through regular definitions. In Chapter 3, the basic concepts of lexical analysis and the best-known techniques for constructing lexical analyzers are described. In Chapter 4, context-free grammars and top-down and bottom-up methods of syntactic analysis are presented. Chapter 5 describes semantic analysis, and in particular how static type checks can be implemented, while Chapter 6 deals with the role of the symbol table in the context of the different phases of compilation as well as its organization and implementation. Chapter 7 presents the intermediate code generation phase, with the different forms of intermediate representation, the presentation of intermediate languages, and the use of schemes for translation into a three-address language. This is followed by Chapter 8, in which the optimization of intermediate code is presented. Chapter 9 deals with the two phases of the compiler's back end, that is, generating and optimizing the final code. Appendices follow where the speech of an exemplary work for the laboratory of the course and exemplary answers to the requirements is presented.
|
Linguistic Editors: |
Paxinou, Evgenia |
Graphic Editors: |
Stella, Boroutzi |
Type: |
Undergraduate textbook |
Creation Date: | 25-06-2024 |
Item Details: | |
ISBN |
978-618-5667-50-4 |
License: |
Attribution - NonCommercial - ShareAlike 4.0 International (CC BY-NC-SA 4.0) |
DOI | http://dx.doi.org/10.57713/kallipos-57 |
Handle | http://hdl.handle.net/11419/8450 |
Bibliographic Reference: | Georgouli, K. (2024). Compilers [Undergraduate textbook]. Kallipos, Open Academic Editions. https://dx.doi.org/10.57713/kallipos-57 |
Language: |
Greek |
Consists of: |
1. Introduction to Compilers 2. Formal languages and grammars 3. Lexical analysis 4. Syntactic analysis 5. Semantic analysis 6. Symbol Table 7. Generation of intermediate code 8. Optimization of intermediate code 9. Machine code generation and optimization 10. Appendices |
Number of pages |
302 |
Publication Origin: |
Kallipos, Open Academic Editions |
You can also view | |
User comments | |
There are no published comments available! | |