Compilers

Compilers pdf epub mobi txt 電子書 下載2025

出版者:Addison Wesley
作者:Alfred V. Aho
出品人:
頁數:1009
译者:
出版時間:2007-10-15
價格:USD 132.00
裝幀:
isbn號碼:9780321547989
叢書系列:
圖書標籤:
  • 計算機
  • 編譯原理
  • Compiler
  • 編譯原理
  • 編譯器設計
  • 程序語言
  • 計算機科學
  • 形式語言
  • 語法分析
  • 語義分析
  • 代碼生成
  • 優化
  • 編譯技術
想要找書就要到 小美書屋
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

具體描述

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 that few readers will ever go on to construct a compiler, retain their focus on the broader set of problems faced in software design and software development. Computer scientists, developers, and aspiring students that want to learn how to build, maintain, and execute a compiler for a major programming language.

著者簡介

Alfred V. Aho是哥倫比亞大學的Lawrence Gussman計算機科學教授。Aho教授多次獲奬,其中包括哥倫比亞校友會頒發的2003年度Great Teacher奬和電子與電器工程師協會的Jonh von Neumann奬章。他是美國國傢工程院院士,以及ACM和IEEE的會員。

Monica S. Lam是斯坦福大學的計算機科學教授。她曾經是Tensilica的首席科學傢,並且是moka5的創建者和首席執行官。她領導瞭SUIF項目。該項目開發瞭最流行的研究性編譯器之一,並首創瞭很多在工業界得到應用的編譯技術。

Ravi Sethi發起瞭Avaya公司的研究組織,並且是Avaya實驗室的主管。之前他曾經是Bell實驗室的高級副總裁,並且是Lucent科技的通信軟件的首席技術官。他曾經在Pennsylvania州立大學和Arizona大學擁有教職,並在Priceton大學和Rutgers大學任教。他是ACM的會員。

Jeffery D. Ullman是Gradiance公司的首席執行官和Standford大學的Stanford W. Ascherman計算機科學(名譽退休)教授。他的研究興趣包括數據庫理論、數據庫集成、數據挖掘和利用信息基礎軟件的教育技術。他是美國國傢工程院的院士,ACM的會員,並且是Karlstrom奬和Knuth奬的獲得者。

圖書目錄

1 Introduction
1.1 Language Processors
1.2 The Structure of a Compiler
1.3 The Evolution of Programming Languages
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 Implementing 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 in 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 Architectures
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 Affine 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 Summary 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
· · · · · · (收起)

讀後感

評分

看了有关静态分析的几章,书中有相关算法的讲解,非常细致。总的感觉是适合本科生教学,研究生可能会觉得它有点罗嗦,不够直截了当,切入主题。  

評分

该本书的第2章读起来真的让人痛不欲生,太晦涩!如果不是看到这里其它读者的评论,没准儿我就放弃读这本书。理论知识讲的很深奥,无相关基础者勿入。现在开始读第3章,明显感觉理解起来相对容易很多。最近在做这方面的相关工作,这个大块头一定要拿下!  

評分

大学里面的课本,大多数都是一个稍微浓缩了的编译原理讲解,老师基本上还是要看看这本红龙书才敢讲课的。 如果说这本书有什么优点,那么可以这么说,很多编译原理的书都有很多错误,这些错误是因为他们的算法和这本书的不太一样。有些取了捷径。不是说算法不对,而是没有讲明...  

評分

这诚然是一本好书。 但是翻译的的着实费解又晦涩。 事实上不是因为原文难懂,而是翻译的时候,译者很多地方没有按照中文的阅读习惯来翻译。 如果把原文拿来对照,当真是极好的。 其实,我很想说有很多地方翻译错了,但是忽然又觉得是不是因为自己汉语理解能力太差了,所以茫然...  

評分

个人觉得中文翻译有些问题,倒不如看原版反而觉得某些概念更为清晰,看完了前七章,觉得对编程语言有了更为深刻的理解,读完这本书大家可以试着写一个有词法分析和语法分析的计算器,算是对知识的一种运用吧!你不一定要去做编译器,但是最好对编译器的运行机制和原理有个了解...  

用戶評價

评分

评分

评分

评分

评分

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.quotespace.org All Rights Reserved. 小美書屋 版权所有