如果是有了一定的编译器学习基础,可以看虎书。 但是入门的话,龙书更基础,同时一个更详细。
龙书侧重基础,很详细,最新版里也加入了很多优化的内容,很好的一本书~
鲸书侧重优化部分,感觉不搞编译的话没必要看这个吧~
虎书侧重实践,大部分基础和优化都讲到了但不是特别详细,本书还实现了一个tiger编译器~
1、龙书(Dragon book)
英文名:Compilers: Principles,Techniques,and Tools
作者:Alfred V.Aho,Ravi Sethi,Jeffrey D.Ullman
中文名:编译原理技术和工具
第一版龙书
第二版龙书
龙书”。龙书是Alfred V. Aho等人于1986年出版的,由于出版年代较早,其中包含部分过时的技术并且没有反映一些新的编译技术。新编的《编译原理》抛弃诸如算符优先分析等过时技术,增加面向对象编译、类型检查等新技术
下载地址:
资料包括: 中文版(第二版) 英文版(第二版) 部分课后习题答案 PPT课件
http://download.csdn.net/detail/tskyming/4205068 (需要积分)
http://skyming.ctdisk.com/u/715332/1037889 (无积分)
2、虎书(Tiger book)
英文名:Modern Compiler Implementation in C
作者:Andrew W.Appel,with Jens Palsberg
中文名:现代编译原理-C语言描述
虎书
“虎书”。虎书出版比较晚,与《编译原理》的知识点差不多,但增加了数据流分析、循环优化、内存管理等内容。与虎书比,《编译原理》更适合国内的编译原理课程教学。这本是C版,还有java版和ML版。
下载地址:
整理资料:
C版: 中文版 英文版 课后习题答案 全书的代码(来自官网)
Java版: 中文版 英文版 全书的代码(来自官网)
http://download.csdn.net/detail/tskyming/4203400 (需要积分)
http://www.ctdisk.com/mydisk.php (无积分)
3、鲸书(Whale book)
英文名:Advanced Compiler Design and Implementation
作者:Steven S.Muchnick
中文名:高级编译器设计与实现
鲸书
“鲸书”。鲸书侧重在对编译器后端优化的处理。在本科阶段的编译教学中旨在让学生对程序设计语言的编译全过程有系统的理解,因此会介绍编译器后端的处理技术,但不注重优化技术。鲸书更适合作为研究生的教材或参考书。
下载地址:
由于鲸书比较难 搜集的资料较少 只有 中文版 和 英文版
http://download.csdn.net/detail/tskyming/4207296 (需积分)
http://www.ctdisk.com/mydisk.php (无需积分)
注意:
资料中有些是DJVU 格式的,下载个windjview 即可
=================================================