龙、虎、鲸书杂谈

关于编译有三本书:

龙书: 《Compilers:Principles, Techniques, &Tools》

虎书:《Modern Compiler Implement in C》 这本书还有JAVA和ML版本

鲸书:《Advanced Compiler Design and Implementation》

这三本书在编译领域非常出名,其中名气最大的应该属于龙书了,也是目前仍然有版本在印刷发行的。虎书和鲸书国内貌似没有继续发行了,我找英文版找了好久,都没有找到合适的,只好买的二手的旧书。三本书凑齐也挺不容易的。

这三本书,到目前为止,除了有时候查东西翻翻,正经读的最多的还算是龙书。虎书和鲸书都只读了一章。个人也想理一下这三本书的思路,好利于自己的读书和学习。曾经看到有人觉的最适合入门读的是鲸书,这点我实在是不敢苟同。除非是个人编译基础非常好,而且重点在于研究编译里的优化,可以直接读鲸书。其他的情况,都不建议直接读鲸书的。

龙书,对整个编译的过程,介绍的很详细,而且很多时候,对编译理论中很多的技术都介绍的很详细,给人感觉像是百科全书的感觉。你能用到的,基本在龙书里都能找到。正是这个原因,也让这本书读起来有点费劲。这本书对编译理论中的优化部分覆盖的不多,等于是它和鲸书刚好结合起来,构成编译的大百科,一个不侧重优化,一个侧重优化,都很详尽,将所有涉及的知识都覆盖了。

虎书更像是龙书和鲸书结合之后的简化版本,是建议作为学习编译的教材一类的书,既可以一学期学完,只学编译的基本知识,也可以两学期学完,继续学编译的高级topics,大部分也是关于优化的内容。虎书还有一个特别好的有点,就是很接近与实际,谈一些理论知识的时候,都会去拿实际的代码去说明一件事情,这样更加的利于学习时候的理解,而不是被一大堆的理论完全搞的摸不着头脑。

所以综合来看,如果技术不是非常的扎实,那还是建议从虎书开始学习,边学边练,慢慢的把基础打扎实,然后再继续龙书和鲸书的学习。编译原理是大学本科时候的必修课,可能很多人觉的自己学过了,基础应该可以,但是依然推荐从虎书开始,实际工作中,虽然大家都学过编译原理了,但是到最后能把整个流程的大致环节说清楚的,就算是不错的了。

时间: 2024-08-01 14:21:05

龙、虎、鲸书杂谈的相关文章

奇虎360公司股东之一鼎晖减持手中360股票

奇虎360董事长周鸿祎 [科技讯]2月22日消息,据i美股报道,相关SC13G文件显示,奇虎360公司股东之一鼎晖投资目前持有该公司343.1万股普通股(折成ADS约228.7万份),占总股本(1.84亿股普通股,折合成ADS约1.22亿份)的2.8%.对比2011年奇虎招股书显示的持股1187.6万股普通股,鼎晖减持844.5万股普通股(折成ADS约563万份). 鼎晖投资曾是最早投资奇虎360公司的风投之一,奇虎360发布的IPO招股书显示,鼎晖投资合伙人王功权在IPO前持股比例为7.05%

HIT CS科班对计算机专业knowledge的compilation

[题记]Great minds discuss ideas. Average minds discuss events. Small minds discuss people. [前面的话]本文首发于某留学论坛,并可以随意转载.有任何建议.意见,都可以给我发邮件,hitzzy at gmail dot com. 作为计算机科班.系统方向,谈谈我对计算机专业素养的理解,希望对大家有所帮助. 所谓,知之者不如好之者,好之者不如乐之者,计算机专业也不例外.虽然本科是被选到计算机专业,但大一因为C语言老

编译和链接那点事<上>

有位学弟想让我说说编译和链接的简单过程,我觉得几句话简单说的话也没什么意思,索性写篇博文稍微详细的解释一下吧.其实详细的流程在经典的<Linkers and Loaders>和<深入理解计算机系统>中均有描述,也有国产的诸如<程序员的自我修养--链接.装载与库>等大牛著作.不过,我想大家恐怕很难有足够的时间去研读这些厚如词典的书籍.正巧我大致翻阅过其中的部分章节,干脆也融入这篇文章作为补充吧. 我的环境:Fedora 16 i686 kernel-3.6.11-4 gc

对于技术焦虑的一点想法

有一个公众号是吃草的罗汉,最近看他的一篇文章,我被里面的一小段内容吸引了,他这样写道: 在成长的道路上,有时你越是不喜欢的事,越会阴差阳错的让你遇见 在<我也可以是流浪诗人>中有几段话,很有意思,摘录一些分享给大家: 做你没做过的事情,叫做成长: 做你不愿意做的事情,叫做改变: 做你不敢做的事情,叫做突破: 我觉得很受用,自己似曾想过但没想通的问题,好像有了一些答案. 联系一下我自己,离开搜狐畅游之后,我就希望找到一个能够施展拳脚的舞台,有考虑大厂,因为不需要从0开始,如果有10分,直接可以从

php中文字母数字验证码实现代码_php技巧

英文同数字 <?php Header("Content-type:image/png"); //定义header,声明图片文件,最好是png,无版权之扰;  //生成新的四位整数验证码 session_start();//开启session; $authnum_session = '';  $str = 'abcdefghijkmnpqrstuvwxyz1234567890';  //定义用来显示在图片上的数字和字母; $l = strlen($str); //得到字串的长度; 

PHP汉字验证码的实现

<?php    /*    * 文件:chinesechar.php    * 作用:汉字数据储存    * 作者:PHP实战群:33918040 - 鱼尾唯一    * 网址:http://bbs.ailf.cn/ http://www.fishwei.com/  * 特注:版权所有转载注明出处!有付出才会有收获! */    $ChineseChar = array("人","出","来","友","学&

三种php汉字英文验证代码生成程序(1/4)

 代码如下 复制代码 $ChineseChar = explode(',',"人,出,来,友,学,孝,仁,义,礼,廉,忠,国,中,易,白,者,火 ,王,金,木,雷,风,龙,虎,天,地, 生,晕,菜,鸟,田,三,百,钱,福 ,爱,情,兽,虫,鱼,九,网,新,度,哎,唉,啊,哦,仪,老,少,日, 月 ,星,肯,各,程"); $k[0]=$ChineseChar[array_rand($ChineseChar)]; $k[1]=$ChineseChar[array_rand($Chinese

php中文汉字验证码程序

 代码如下 复制代码 <?php    /*    * 文件:chinesechar.php    * 作用:汉字数据储存    */    $ChineseChar = array("人","出","来","友","学","孝","仁","义","礼","廉","忠","

借力汽车业高速发展 零部件企业扎堆上市

8月24日,浙江龙生汽车部件http://www.aliyun.com/zixun/aggregation/7494.html">股份有限公司IPO过会,汽车零部件类上市版图再添新丁. 自2009年A股IPO审核重启以来,借助汽车业景气度高涨之势,零部件公司接踵登陆资本市场,至今已有22家完成IPO,其中今年就有11家上市;此外,还有3家企业借壳上市.以上数量,占过去20年零部件上市企业存量的50%,融资额更数十倍于前者. 记者从多家投行处得到的反馈是,至少30个项目将于两年内申报IPO,