出版時間:2005-3 出版社:機械工業(yè)出版社 作者:查爾斯N.費希爾 頁數(shù):812
Tag標(biāo)簽:無
內(nèi)容概要
本書提供了創(chuàng)新的編譯器構(gòu)造方法,通過大量的示例和練習(xí),讀者可以從頭至尾學(xué)習(xí)如何設(shè)計一個可用的編譯器。書中均衡討論了編譯器設(shè)計中的理論與實現(xiàn)兩大部分,詳細(xì)討論了標(biāo)準(zhǔn)編譯器設(shè)計的相關(guān)主題 (如自頂向下和自底向上的語法分析、語義分析、中間表示和代碼生成) 。本書中所有的程序均采用易讀的基于C語言的代碼來表示。本書是一本優(yōu)秀的編譯器構(gòu)造方面的教材,已經(jīng)被國際上多所大學(xué)所采納,適用于高等院校計算機專業(yè)的學(xué)生和使用C語言的專業(yè)程序員。均衡討論編譯器設(shè)計的理論與實現(xiàn)兩大部分,既很好地介紹了編譯器理論,又提供了大量的編譯器設(shè)計示例和練習(xí)。本書的主要特點 強調(diào)使用可以生成語法分析器和詞法分析器的編譯器工具。 徹底討論LR語法分析和歸約技術(shù)。 介紹了FLex和ScanGen。 在每章末尾包含可選的高級主題。
作者簡介
查爾斯 N.費希爾,威斯康星大學(xué)麥迪孫分校計算機教授,他的研究方向主要包括編譯器設(shè)計和實現(xiàn)等。 小理查德 J.勒布朗,佐治亞理工學(xué)院計算學(xué)院的教授和副主任、ACM和IEEE計算機協(xié)會會員,他的研究方向主要包括軟件工程、編程語言設(shè)計和實現(xiàn)、編程環(huán)境等。
書籍目錄
chapter 1 Introduction. 1.1 Overview and History. 1.2 What Do Compilers Do? 1.3 The Structure of a Compiler. 1.4 The Syntax and Semantics of Programming Languages. 1.5 Compiler Design and Programming Language Design. 1.6 Compiler Classifications. 1.7 Influences On Computer Design. Exercises.chapter 2 A Simple Compiler. 2.1 The Structure of a Micro Compiler. 2.2 A Micro Scanner. 2.3 The Syntax of Micro. 2.4 Recursive Descent Parsing. 2.5 Translating Micro. Exercises.chapter 3 Scanning--Theory and Practice. 3.1 Overview. 3.2 Regular Expressions. 3.3 Finite Automata and Scanners. 3.4 Using a Scanner Generator. 3.5 Practical Considerations. 3.6Translating Regular Expressions Into Finite Automata. Exercises.chapter 4 Grammars and Parsing. 4.1 Context-Free Grammars: Concepts and Notation. 4.2 Errors in Context-Free Grammars. 4.3 Transforming Extended Bnf Grammars. 4.4 Parsers and Recognizers. 4.5 Grammar Analysis Algorithms. Exercises.chapter 5 Ll(1) Grammars and Parsers. 5.1 The Ll(1) Predict Function. 5.2 The Ll(1) Parse Table. 5.3 Building Recursive Descent Parsers From Ll(1) Tables. 5.4 An Ll(1) Parser Driver. 5.5 Ll(1) Action Symbols. 5.6 Making Grammars Ll(1) / The If-Then-Else Problem in Ll(1) Parsing. 5.7 The Llgen Parser Generator. 5.8 The llgen parser generator 5.9 Properties of Ll(1) Parsers. 5.10 Ll(K) Parsing. Exercises.chapter 6 Lr Parsing. chapter 7 Semantic Processing. chapter 8 Symbol Tables. chapter 9 Run-Time Storage Organization. chapter 10 Processing Declarations. chapter 11 processing expressions and data structure referenceschapter 12 translating control structureschapter 13 translating procedures and functionschapter 14 attribute grammars and multipass translationchapter 15 code generation and local code optimizationchapter 16 global optimizationchapter 17 parsing in the real worldAppendices A. Definition of Ada/Cs.Appendices B. Scangen.Appendices C. Llgen User Manual.Appendices D. Lalrgen User Manual.Appendices E. Error-Repair Features of Llgen and Lalrgen.Appendices F. Compiler Development Utilities.Bibliography. Index
章節(jié)摘錄
書摘查爾斯 N.費希爾,威斯康星大學(xué)麥迪孫分校計算機教授,他的研究方向主要包括編譯器設(shè)計和實現(xiàn)等。 小理查德 J.勒布朗,佐治亞理工學(xué)院計算學(xué)院的教授和副主任、ACM和IEEE計算機協(xié)會會員,他的研究方向主要包括軟件工程、編程語言設(shè)計和實現(xiàn)、編程環(huán)境等。
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載