作为一名程序员,今天有幸了解到编程原理之三大牛书,也实在是被震撼了,先介绍下了:
先说龙书(Dragon book):
龙书英文名为《Compilers: Principles, Techniques, and Tools 》,中文名《编译原理技术和工具》
作者:Alfred V.Aho,Ravi Sethi,Jeffrey D.Ullman
现在已经是第二版了,2006年8月31日在amazon上架。
斯坦福大学龙书资料站:http://dragonbook.stanford.edu/
龙书第一版出版于1986年,由于出版年代较早,其中包含部分过时的技术并且没有反映一些新的编译技术;
新编的《编译原理》抛弃诸如算符优先分析等过时技术,增加面向对象编译、类型检查等新技术。
中文封面:
英文第一版的封面:
英文第二版的封面:
然后说虎书(Tiger book):
英文名为《Modern Compiler Implementation in C 》,这本是C版,还有java版和ML版;中文名《现代编译原理-C语言描述》
作者:Andrew W.Appel,with Jens Palsberg
虎书出版比较晚,与《编译原理》的知识点差不多,但增加了数据流分析、循环优化、内存管理等内容。
与虎书比,《编译原理》更适合国内的编译原理课程教学。
中文封面:
英文原版封面:
最后来说下鲸书(Whale book) :
鲸书英文名《Advanced Compiler Design and Implementation》,中文名《高级编译器设计与实现》,作者 Steven S.Muchnick。
鲸书侧重在对编译器后端优化的处理。
在本科阶段的编译教学中旨在让学生对程序设计语言的编译全过程有系统的理解,
因此会介绍编译器后端的处理技术,但不注重优化技术。鲸书更适合作为研究生的教材或参考书。
中文封面:
英文版封面:
http://www.amazon.com/Advanced-Compiler-Design-Implementation-Muchnick/dp/1558603204/ref=lh_ni_t?ie=UTF8&psc=1&smid=A2MZMG0JK9LPC2
这3本书是swift的缔造者克里斯·拉特纳(Chris Lattner)最喜欢的3本书;
克里斯·拉特纳(英语:Chris Lattner,1978年-),美国著名程序员,LLVM项目的主要发起人与作者之一,Clang编译器的作者。他现在是苹果公司编译器开发团队的首席架构师,苹果新编程语言Swift创造者。
龙书资料:中文版(第二版) 英文版(第二版) 部分课后习题答案 PPT课件
下载地址:http://download.csdn.net/detail/hnjyzqq/8346013
虎书资料: C版 : 中文版 英文版 课后习题答案 全书的代码(来自官网)
Java版:中文版 英文版 全书的代码(来自官网)
下载地址:http://download.csdn.net/detail/hnjyzqq/8346067
鲸书资料:中文版 和 英文版
下载地址: http://download.csdn.net/detail/hnjyzqq/8346073
注意:资料中有些是DJVU 格式的,下载个windjview 即可。
windjview :http://download.csdn.net/detail/hnjyzqq/8346177