Информатика и вычислительная техника
  • формат djvu
  • размер 17.39 МБ
  • добавлен 03 января 2012 г.
Aho A.V., Sethi R., Ullman J.D. Compilers: Principles, Techniques and Tools
Addison Wesley, 2002. 811 p. ISBN:7115099162, 0201100886

Principles, Techniques, and Tools is a famous computer science textbook by Alfred V. Aho, Ravi Sethi, and Jeffrey D. Ullman about compiler construction. Although decades have passed since the publication of the first edition, it is widely regarded as the classic definitive compiler technology text.

It is known as the Dragon Book because its covers depict a knight and a dragon in battle. The first edition is informally called the "red dragon book" to distinguish it from the second edition and from Aho & Ullman's Principles of Compiler Design (1977, sometimes known as the "green dragon book" because the dragon on its cover is green).

A new edition of the book was published in August 2006.

Topics covered in the first edition include:

- Compiler structure
- Lexical analysis (including regular expressions and finite automata)
- Syntax analysis (including context-free grammars, LL parsers, bottom-up parsers, and LR parsers)
- Syntax directed translation
- Type checking (including type conversions and polymorphism)
- Run-time environment (including parameter passing, symbol tables, and storage allocation)
- Code generation (including intermediate code generation)
- Code optimization
Похожие разделы
Смотрите также

Aho A.V. et al Compilers: Principles, Techniques, & Tools

  • формат pdf
  • размер 48.24 МБ
  • добавлен 03 января 2012 г.
2 edition. Addison Wesley, 2007. 1009 p. ISBN-10:0321547985 This book provides the foundation for understanding the theory and pracitce of compilers. Revised and updated, it reflects the current state of compilation. Every chapter has been completely revised to reflect developments in software engineering, programming languages, and computer architecture that have occurred since 1986, when the last edition published. The authors, recognizing th...

Kakde O.G. Algorithms for Compiler Design

  • формат pdf
  • размер 6.53 МБ
  • добавлен 08 февраля 2012 г.
Издательство Charles River Media, 2002, -334 pp. A compiler translates a high-level language program into a functionally equivalent low-level language program that can be understood and executed by the computer. Crucial to any computer system, effective compiler design is also one of the most complex areas of system development. Before any code for a modern compiler is even written, many programmers have difficulty with the high-level algorithms...

R?thing O. Interacting Code Motion Transformations. Their Impact and Their Complexity

  • формат pdf
  • размер 1.56 МБ
  • добавлен 28 ноября 2011 г.
Издательство Springer, 1998, -223 pp. Is computing an experimental science? For the roots of program optimization the answer to this question raised by Robin Milner ten years ago is clearly yes: it all started with Donald Knuth’s extensive empirical study of Fortran programs. This benchmark-driven approach is still popular, but it has in the meantime been complemented by an increasing body of foundational work, based on varying idealizing assump...

Wehmeyer L., Marwedel P. Fast, Efficient and Predictable Memory Accesses. Optimization Algorithms for Memory Architecture Aware Compilation

  • формат pdf
  • размер 1.63 МБ
  • добавлен 07 ноября 2011 г.
Издательство Springer, 2006, -262 pp. The influence of embedded systems is constantly growing. Increasingly powerful and versatile devices are being developed and put on the market at a fast pace. The number of features is increasing, and so are the constraints on the systems concerning size, performance, energy dissipation and timing predictability. Since most systems today use a processor to execute an application program rather than using ded...

Wilhelm R., Seidl H. Compiler Design. Virtual Machines

  • формат pdf
  • размер 1.12 МБ
  • добавлен 07 ноября 2011 г.
Издательство Springer, 2010, -196 pp. Compilers for high-level programming languages are software systems which are both large and complex. Nonetheless, they have particular characteristics that differentiate them from the majority of other software systems. Their functionality is (almost) completely well-defined. Ideally, there exist completely formal, or at least rather precise, specifications of the source and target languages. Often addition...