Compilation principles (English version. 2nd)

Source: Internet
Author: User
Tags comptia project

Compilation principles (English version. 2nd)China-Pub computer New Book recommendation

 

Recommendation Language: Enjoy the reputation of longshu, an irreplaceable classic book in the compilation Field

 

Basic Information
Original Title: Compilers: Principles, techniques, and tools (2nd edition)
Original Press: Addison Wesley
Author: (US) Alfred v. Aho Monica S. lam Ravi Sethi Jeffrey D. Ullman [Translator's introduction]
Series name: Chinese Chapter Classic original Library
Press: Machinery Industry Press
ISBN: 9787111326748


Introduction
This book is an irreplaceable classic book in the field of compilation. It has been hailed by many computer professionals as "longshu ". Since its publication in 1986, this book has been published by famous universities and research institutions around the world (including Columbia University, Stanford University, Harvard University, Princeton University, Bell Laboratory) as a textbook for the compilation principles courses for undergraduates and graduate students. This book also has a major impact on China's higher computer education field.
Version 2nd makes a comprehensive revision to each chapter to reflect the software engineering that has been published in the previous version for more than 20 years. The impact of development in programming language and computer architecture on compilation technology. This book fully introduces the design of compilers, and emphasizes the wide application of compilation technology in software design and development. Each chapter contains a large number of exercises and a wide range of references.
This book is suitable for the compilation principles and technical courses for undergraduates and graduate students of computer science in colleges and universities. It can also be used as a reference for the majority of computer technicians.
CD contains the following content:
· CompTIA project + test simulation questions.
· The author's project management training video.
· Project Management worksheet and template.

Directory

1 Introduction
1.1 language Processors
1.2 The structure of a compiler
1.3 The Evolution of programming ages
1.4 The Science of building a compiler
1.5 applications of Compiler Technology
1.6 programming language basics
1.7 Summary of Chapter 1
1.8 references for Chapter 1
2 A simple syntax-directed Translator
2.1 Introduction
2.2 syntax definition
2.3 syntax-directed Translation
2.4 Parsing
2.5 A translator for simple expressions
2.6 lexical analysis
2.7 symbol tables
2.8 intermediate code generation
2.9 Summary of Chapter 2
3 lexical analysis

. 3.1 The role of the lexical analyzer
3.2 input Buffering
3.3 specification of tokens
3.4 recognition of tokens
3.5 The lexical-analyzer generator Lex
3.6 Finite Automata
3.7 from regular expressions to Automata
3.8 design of a lexical-analyzer Generator
3.9 Optimization of DFA-based pattern matchers
3.10 Summary of chapter 3
3.11 references for Chapter 3
4 syntax analysis
4.1 Introduction
4.2 context-free grammars
4.3 writing a grammar
4.4 top-down parsing
4.5 bottom-up Parsing
4.6 introduction to LR Parsing: simple lR
4.7 more powerful LR parsers
4.8 using ambiguous Grammars
4.9 parser generators
4.10 Summary of Chapter 4
4.11 references for Chapter 4
5 syntax-directed Translation
5.1 syntax-directed Definitions
5.2 evaluation orders for SDD's
5.3 applications of syntax-directed Translation
5.4 syntax-directed translation schemes
5.5 hnplementing L-attributed SDD's
5.6 Summary of Chapter 5
5.7 references for Chapter 5
6 intermediate-code generation
6.1 variants of syntax trees
6.2 three-address code
6.3 types and declarations
6.4 translation of expressions
6.5 type checking
6.6 Control Flow
6.7 backpatching
6.8 switch-statements
6.9 intermediate code for procedures
6.10 Summary of Chapter 6
6.11 references for Chapter 6
7 run-time Environments
7.1 Storage Organization
7.2 stack allocation of space
7.3 access to nonlocal data on the stack
7.4 heap Management
7.5 introduction to garbage collection
7.6 introduction to trace-based collection
7.7 short-Pause garbage collection
7.8 advanced topics in garbage collection
7.9 Summary of Chapter 7
7.10 references for Chapter 7
8 Code Generation
8.1 issues m the design of a Code Generator
8.2 The Target Language
8.3 addresses in the target code
8.4 basic blocks and Flow Graphs
8.5 Optimization of basic blocks
8.6 a simple code generator
8.7 Peephole Optimization
8.8 register allocation and assignment
8.9 instruction selection by tree Rewriting
8.10 optimal code generation for expressions
8.11 dynamic programming code-generation
8.12 Summary of Chapter 8
8.13 references for Chapter 8
9 machine-independent Optimizations
9.1 The principal sources of Optimization
9.2 introduction to data-Flow Analysis
9.3 foundations of data-Flow Analysis
9.4 constant propagation
9.5 partial-Redundancy Elimination
9.6 loops in Flow Graphs
9.7 region-based Analysis
9.8 Symbolic Analysis
9.9 Summary of Chapter 9
9.10 references for Chapter 9
10 Instruction-Level Parallelism
10.1 processor ubuntures
10.2 code-scheduling constraints
10.3 basic-block scheduling
10.4 Global Code Scheduling
10.5 software pipelining
10.6 Summary of chapter 10
10.7 references for Chapter 10
11 optimizing for parallelism and locality
11.1 Basic Concepts
11.2 matrix multiply: an in-depth example
11.3 iteration Spaces
11.4 aftlne array Indexes
11.5 data Reuse
11.6 array data-Dependence Analysis
11.7 finding synchronization-free Parallelism
11.8 synchronization between Parallel Loops
11.9 pipelining
11.10 locality Optimizations
11.11 other uses of affine transforms
11.12 summarv of Chapter 11
11.13 references for Chapter 11
12 interprocedural Analysis
12.1 Basic Concepts
12.2 why interprocedural analysis?
12.3 A logical representation of data flow
12.4 a simple pointer-Analysis Algorithm
12.5 context-insensitive interprocedural Analysis
12.6 context-sensitive Pointer Analysis
12.7 datalog implementation by BDD's
12.8 Summary of chapter 12
12.9 references for Chapter 12
A A complete front end
A.1 The Source Language
A.2 main
A.3 lexical analyzer
A.4 symbol tables and types
A.5 intermediate code for expressions
A.6 jumping code for boolean expressions
A.7 intermediate code for statements
A.8 parser
A.9 creating the front end
B finding Linearly Independent Solutions
Index

 

Book details and purchase address:Http://www.china-pub.com/197632&ref=cnblogs

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.