编译原理(第2版)
沪江价:¥60.00
- 市场价:89.00
- 节省:¥29.00
- 积分:62
- 出版社: 机械工业出版社
- 作者:Alfred V. Aho, Monica S. Lam, JefferycD.cUllman
商品介绍
本书专题:http://book.cnblogs.com/zt/compilers/
【前言】
从本书的1986版的出版到现在,编译器设计的世界已经发生了很大的改变。程序设计语言的发展提出了新的编译问题。计算机体系结构提供了多种多样的资源,而编译器设计者必须能够充分利用这些资源。可能最有意思的事情是,古老的代码优化技术已经在编译器之外找到了新的应用。现在,这些技术被有些工具用于寻找软件中错误,以及,最重要的是,寻找现有代码中的安全漏洞。并且,很多“前端”技术——文法、正则表达式、语法分析器、以及语法制导翻译器等——仍然被广泛应用。
因此,本书的先前版本所体现的我们的价值观一直没有改变。我们认识到只有很少的读者将会去构建,甚至维护,一个主流程序设计语言的编译器。但是,和编译器相关的模型、理论和算法可以被应用到软件设计和开发中出现的各种各样的问题上。因此我们的重点是那些在设计一个语言处理器时常常会碰到的问题,而不考虑具体的源语言和目标机器究竟是什么。
【作者介绍】
Alfred V. Aho是哥伦比亚大学的Lawrence Gussman计算机科学教授。Aho教授多次获奖,其中包括哥伦比亚校友会颁发的2003年度Great Teacher奖和电子与电器工程师协会的Jonh von Neumann奖章。他是美国国家工程院院士,以及ACM和IEEE的会员。
Monica S. Lam是斯坦福大学的计算机科学教授。她曾经是Tensilica的首席科学家,并且是moka5的创建者和首席执行官。她领导了SUIF项目。该项目开发了最流行的研究性编译器之一,并首创了很多在工业界得到应用的编译技术。
JefferycD.cUllman是Gradiance公司的首席执行官和Standford大学的StanfordcW.cAscherman计算机科学(名誉退休)教授.a他的研究兴趣包括数据库理论.c数据库集成.c数据挖掘和利用信息基础软件的教育技术.a他是美国国家工程院的院士,4ACM的会员,4并且是Karlstrom奖和Knuth奖的获得者.
【内容简介】
要学完本书的全部或大部分内容至少需要两个季度、甚至两个学期。通常会在一门本科课程中讲授本书的前半部分内容;而本书的后半部分——强调代码优化——会在研究生层面或小范围的另一门课程中讲授。下面是各个章节的概要介绍:
第一章是一些关于学习动机的资料,同时也给出了一些关于计算机体系结构和程序设计语言原理的背景知识。
第二章开发了一个缩微的编译器,并介绍了很多重要的概念。这些概念将在后面的各个章节中深入介绍。这个编译器本身在附录中给出。
第三章讨论了词法分析、正则表达式、有穷状态自动机、和词法分析器的生成工具。这些内容是各种正文处理的基础。
第四章讨论了主流的语法分析方法, 包括自顶向下方法(递归下降法,LL技术)和自底向上方法(LR技术和它的变体)。
第五章介绍了语法制导定义和语法制导翻译的基本思想。
第六章使用第五章中的理论,显示了如何使用这些理论为一个典型的程序设计语言生成中间代码。
第七章讨论了运行时刻环境,主要是运行时刻栈的管理和垃圾收集机制。
第八章是关于目标代码生成的。它讨论了基本块的构造,从表达式和基本块生成代码的方法,以及寄存器分配技术。
【前言】
从本书的1986版的出版到现在,编译器设计的世界已经发生了很大的改变。程序设计语言的发展提出了新的编译问题。计算机体系结构提供了多种多样的资源,而编译器设计者必须能够充分利用这些资源。可能最有意思的事情是,古老的代码优化技术已经在编译器之外找到了新的应用。现在,这些技术被有些工具用于寻找软件中错误,以及,最重要的是,寻找现有代码中的安全漏洞。并且,很多“前端”技术——文法、正则表达式、语法分析器、以及语法制导翻译器等——仍然被广泛应用。
因此,本书的先前版本所体现的我们的价值观一直没有改变。我们认识到只有很少的读者将会去构建,甚至维护,一个主流程序设计语言的编译器。但是,和编译器相关的模型、理论和算法可以被应用到软件设计和开发中出现的各种各样的问题上。因此我们的重点是那些在设计一个语言处理器时常常会碰到的问题,而不考虑具体的源语言和目标机器究竟是什么。
【作者介绍】
Alfred V. Aho是哥伦比亚大学的Lawrence Gussman计算机科学教授。Aho教授多次获奖,其中包括哥伦比亚校友会颁发的2003年度Great Teacher奖和电子与电器工程师协会的Jonh von Neumann奖章。他是美国国家工程院院士,以及ACM和IEEE的会员。
Monica S. Lam是斯坦福大学的计算机科学教授。她曾经是Tensilica的首席科学家,并且是moka5的创建者和首席执行官。她领导了SUIF项目。该项目开发了最流行的研究性编译器之一,并首创了很多在工业界得到应用的编译技术。
JefferycD.cUllman是Gradiance公司的首席执行官和Standford大学的StanfordcW.cAscherman计算机科学(名誉退休)教授.a他的研究兴趣包括数据库理论.c数据库集成.c数据挖掘和利用信息基础软件的教育技术.a他是美国国家工程院的院士,4ACM的会员,4并且是Karlstrom奖和Knuth奖的获得者.
【内容简介】
要学完本书的全部或大部分内容至少需要两个季度、甚至两个学期。通常会在一门本科课程中讲授本书的前半部分内容;而本书的后半部分——强调代码优化——会在研究生层面或小范围的另一门课程中讲授。下面是各个章节的概要介绍:
第一章是一些关于学习动机的资料,同时也给出了一些关于计算机体系结构和程序设计语言原理的背景知识。
第二章开发了一个缩微的编译器,并介绍了很多重要的概念。这些概念将在后面的各个章节中深入介绍。这个编译器本身在附录中给出。
第三章讨论了词法分析、正则表达式、有穷状态自动机、和词法分析器的生成工具。这些内容是各种正文处理的基础。
第四章讨论了主流的语法分析方法, 包括自顶向下方法(递归下降法,LL技术)和自底向上方法(LR技术和它的变体)。
第五章介绍了语法制导定义和语法制导翻译的基本思想。
第六章使用第五章中的理论,显示了如何使用这些理论为一个典型的程序设计语言生成中间代码。
第七章讨论了运行时刻环境,主要是运行时刻栈的管理和垃圾收集机制。
第八章是关于目标代码生成的。它讨论了基本块的构造,从表达式和基本块生成代码的方法,以及寄存器分配技术。
留言咨询:
表达一些您的想法吧! 已有0条留言咨询
文明评论,理性发言!
验证码:








