An edition of Principles of compiler design (1977)

Principles of Compiler Design

  • 0 Ratings
  • 17 Want to read
  • 4 Currently reading
  • 1 Have read

My Reading Lists:

Create a new list

Check-In

×Close
Add an optional check-in date. Check-in dates are used to track yearly reading goals.
Today

  • 0 Ratings
  • 17 Want to read
  • 4 Currently reading
  • 1 Have read

Buy this book

Last edited by MARC Bot
August 22, 2024 | History
An edition of Principles of compiler design (1977)

Principles of Compiler Design

  • 0 Ratings
  • 17 Want to read
  • 4 Currently reading
  • 1 Have read

This edition doesn't have a description yet. Can you add one?

Publish Date
Pages
612

Buy this book

Previews available in: English

Edition Availability
Cover of: Principles of Compiler Design
Principles of Compiler Design
2002, Narosa Publishing House
Paperback
Cover of: Principles of compiler design
Principles of compiler design
1977, Addison-Wesley Publishing
in English
Cover of: Principles of compiler design
Principles of compiler design
1977, Addison-Wesley
in English
Cover of: Principles of compiler design
Principles of compiler design
1977, Addison-Wesley Pub. Co.
in English

Add another edition?

Book Details


Table of Contents

Chapter 1. Introduction to Compilers
1.1. Compilers and Translators Page 1 1.2. Why Do We Need Translators? Page 3 1.3. The Structure of a Compiler Page 5 1.4. Lexical Analysis Page 10 1.5. Syntax Analysis Page 12 1.6. Intermediate Code Generation Page 13 1.7. Optimization Page 17 1.8. Code Generation Page 19 1.9. Bookkeeping Page 20 1.10. Error Handling Page 21 1.11. Compiler-Writing Tools Page 21 1.12. Getting Started Page 23
Chapter 2. Programming Languages
2.1. High-Level Programming Languages Page 26 2.2. Definitions of Programming Languages Page 28 2.3. The Lexical and Syntactic Structure of a Language Page 32 2.4. Data Elements Page 34 2.5. Data Structures Page 38 2.6. Operators Page 45 2.7. Assignment Page 50 2.8. Statements Page 53 2.9. Program Units Page 55 2.10. Data Environments Page 57 2.11. Parameter Transmission Page 59 2.12. Storage Management Page 63
Chapter 3. Finite Automata and Lexical Analysis
3.1. The Role of the Lexical Analyzer Page 74 3.2. A Simple Approach to the Design of Lexical Analyzers Page 76 3.3. Regular Expressions Page 82 3.4. Finite Automata Page 88 3.5. From Regular Expressions to Finite Automata Page 95 3.6. Minimizing the Number of States of a DFA Page 99 3.7. A Language for Specifying Lexical Analyzers Page 103 3.8. Implementation of a Lexical Analyzer Page 109 3.9. The Scanner Generator as Swiss Army Knife Page 118
Chapter 4. The Syntactic Specification of Programming Languages
4.1. Context-free Grammars Page 126 4.2. Derivations and Parse Trees Page 129 4.3. Capabilities of Context-free Grammars Page 136
Chapter 5. Basic Parsing Techniques
5.1. Parsers Page 146 5.2. Shift-reduce Parsing Page 150 5.3. Operator-precedence Parsing Page 158 5.4. Top-down Parsing Page 174 5.5. Predictive Parsers Page 184
Chapter 6. Automatic Construction of Efficient Parsers
6.1. LR Parsers Page 198 6.2. The Canonical Collection of LR (0) Items Page 204 6.3. Constructing SLR Parsing Tables Page 211 6.4. Constructing Canonical LR Parsing Tables Page 214 6.5. Constructing LALR Parsing Tables Page 219 6.6. Using Ambiguous Grammars Page 225 6.7. An Automatic Parser Generator Page 229 6.8. Implementation of LR Parsing Tables Page 233 6.9. Constructing LALR Sets of Items Page 236
Chapter 7. Syntax-Directed Translation
7.1. Syntax-directed Translation Schemes Page 246 7.2. Implementation of Syntax-directed Translators Page 249 7.3. Intermediate Code Page 254 7.4. Postfix Notation Page 254 7.5. Parse Trees and Syntax Trees Page 258 7.6. Three-address Code, Quadruples, and Triples Page 259 7.7. Translation of Assignment Statements Page 265 7.8. Boolean Expressions Page 271 7.9. Statements that Alter the Flow of Control Page 281 7.10. Postfix Translations Page 286 7.11. Translation with a Top-down Parser Page 290
Chapter 8. More About Translation
8.1. Array References in Arithmetic Expressions Page 296 8.2. Procedure Calls Page 303 8.3. Declarations Page 307 8.4. Case Statements Page 308 8.5. Record Structures Page 312 8.6. PL/I-style Structures Page 317
Chapter 9. Symbol Tables
9.1. The Contents of a Symbol Table Page 328 9.2. Data Structures for Symbol Tables Page 336 9.3. Representing Scope Information Page 340
Chapter 10. Run-time Storage Administration
10.1. Implementation of a Simple Stack Allocation Scheme Page 351 10.2. Implementation of Block-structured Languages Page 356 10.3. Storage Allocation in FORTRAN Page 364 10.4. Storage Allocation in Block-structured Languages Page 377
Chapter 11. Error Detection and Recovery
11.1. Errors Page 382 11.2. Lexical-phase Errors Page 388 11.3. Syntactic-phase Errors Page 391 11.4. Semantic Errors Page 402
Chapter 12. Introduction to Code Optimization
12.1. The Principal Sources of Optimization Page 408 12.2. Loop Optimization Page 410 12.3. The DAG Representation of Basic Blocks Page 418 12.4. Value Numbers and Algebraic Laws Page 427 12.5. Global Data-flow Analysis Page 429
Chapter 13. More About Loop Optimization
13.1. Dominators Page 442 13.2. Reducible Flow Graphs Page 447 13.3. Depth-first Search Page 449 13.4. Loop-invariant Computations Page 454 13.5. Induction Variable Elimination Page 466 13.6. Some Other Loop Optimizations Page 471
Chapter 14. More About Data-flow Analysis
14.1. Reaching Definitions Again Page 478 14.2. Available Expressions Page 482 14.3. Copy Propagation Page 487 14.4. Backward Flow Problems Page 489 14.5. Very Busy Expressions and Code Hoisting Page 491 14.6. The Four Kinds of Data-flow Analysis Problems Page 497 14.7. Handling Pointers Page 499 14.8. Interprocedural Data-flow Analysis Page 504 14.9. Putting It All Together Page 511
Chapter 15. Code Generation
15.1. Object Programs Page 518 15.2. Problems in Code Generation Page 521 15.3. A Machine Model Page 520 15.4. A Simple Code Generator Page 525 15.5. Register Allocation and Assignment Page 533 15.6. Code Generation from DAG's Page 537 15.7. Peephole Optimization Page 548
Appendix A. A Look at Some Compilers
A.1. The C Compilers Page 557 A.2. The FORTRAN H Compiler Page 559 A.3. The BLISS/11 Compiler Page 561
Appendix B. A Compiler Project
B.1. Introduction Page 563 B.2. A PASCAL Subset Page 563 B.3. Program Structure Page 566 B.4. Lexical Conventions Page 566 B.5. Suggested Exercises Page 567 B.6. Some Extensions Page 569 Bibliography Page 570 Suggested Exercises Page 591 Index Page 601

Classifications

Library of Congress
QA76.6 .A365x 1999

The Physical Object

Format
Paperback
Number of pages
612

ID Numbers

Open Library
OL9082601M
Internet Archive
principlesofcomp0000ahoa_x2t2
ISBN 10
8185015619
ISBN 13
9788185015613
Library Thing
195738

Community Reviews (0)

Feedback?
No community reviews have been submitted for this work.

History

Download catalog record: RDF / JSON
August 22, 2024 Edited by MARC Bot import existing book
July 24, 2024 Edited by MARC Bot import existing book
December 20, 2023 Edited by ImportBot import existing book
December 11, 2023 Edited by MARC Bot import existing book
December 11, 2009 Created by WorkBot add works page