文档章节

LLVM每日谈之十一 编译器相关学习资料推荐

snsn1984
 snsn1984
发布于 2013/03/08 15:04
字数 774
阅读 716
收藏 13
作者: snsn1984
近来碰到一些想学习LLVM但是已经把编译原理的知识还给老师的朋友,让帮忙推荐一些学习资料,我就把手头有的一些资料,大都是自己读过的一些资料整理一下,列出来,希望对大家有所帮助。
1、《Compilers---Principles,Techniques, and Tools》
没错,这就是传说中的龙书,虽然无数次被人推荐,也无数人说能不能换点别的推荐,但是它还是当之无愧的首选。网上可以找到PDF的电子版,中英 文的都有。如果真是打算好好的学编译器,建议买本英文版的,读的时候,不明白的再看看中文版的电子版。因为如果以中文版为主的话,后续你面对编译器的源 码,可能会有一些东西对不上号。读的是英文版的就会好多了。
这是一个公开课的网站,上面有很多优秀的公开课,都是世界著名大学的。其中有一门课程叫做《Compiler》讲的特别不错,如果跟着这个课程学习的话,再辅以龙书,效果会很不错,同时也会让你觉的读龙书没什么难得,还有一种拨云见日的感觉。
3、《程序员的自我修养》
关于这本书的介绍,网上有很多,大家可以看下。这本书的立足点确实是以往很少有资料介绍的,但是并不代表不重要。如果你要是想了解程序真正的从源码到执行,这本书的立足点的那些环节是必不可少的。
4、《Linkers and Loaders》
这本书是链接和装载方面最为权威的一本书,也十分的完整,但是内容有点偏旧。这本书读的不读,3书中的作者也推荐了这本书,覆盖领域和3中的大致相同。有精力的同学可以看一下。
5、《深入理解计算机系统》
这本书的经典就不用太多的言语介绍了。这本书中的第七章,主要介绍链接部分的内容,和3、4的覆盖范围有些相似,如果时间有限,建议可以直接读这本书的第七章。
       这些资料中3、4、5覆盖的范围主要在链接和加载上面,这是一般的讲编译的书不会覆盖的,但是真正的编译器不光进行了编译,必然包含一个链接的过程,所以这个过程对了解整个的编译器的工作流程有着相当重要的作用。所以还是建议学习一下这方面的知识。

因为本人读过的书不多,这里也列一个别人的推荐书单:

这个书单里也列了一些别人的书单,我想这些应该够用了。


--------------------------------------------------- 转载请注明出处----------------------------------------------------------

© 著作权归作者所有

snsn1984
粉丝 94
博文 32
码字总数 45245
作品 0
长春
项目经理
私信 提问
llvm每日谈之一 llvm是什么

作者:snsn1984 写在前面的话: 最近接触llvm比较多,在这个上面花了不少的时间。感 觉llvm要完全理解透是个很不容易的事情,需要在学习过程中好好的整理下自己的思路。刚好又阅读了开源项目...

snsn1984
2012/10/31
3.2K
11
LLVM每日谈之九 谈LLVM的学习

作者:snsn1984 从接触LLVM编译器到现在,也有多半年时间了,在这多半年的时间里,也花了不少精力在上面。现在回过头来总结一下在LLVM的学习过程中的一些感悟。(注:这里对LLVM的学习,不是...

snsn1984
2013/02/28
523
1
LLVM每日谈之七 Clang

作者:snsn1984 官方介绍Clang是LLVM native的一个面向C/C++/Objective-C的编译器,目标是要提供一个编译非常快的编译器。他们宣称在Debug模式下编译Objective-C比GCC快3倍。至于是否能比GCC...

snsn1984
2012/11/24
877
0
LLVM每日谈之十五 LLVM自带的examples

作者:snsn1984 在LLVM源码的目录下,有一个目录叫做examples,这个目录下边有几个LLVM的例子,初学者一般不会太关注这些例子,但是这些例子确实是精华中 的精华,在LLVM的学习过程中不可避免...

snsn1984
2013/07/08
312
0
LLVM每日谈之十 LLVM Test简介

作者:snsn1984 就像很多优秀的软件都有自己的测试框架一样,LLVM也有自己的测试框架。LLVM的测试主要分为两 部分:regression tests 和 whole programs。其中,regression tests主要位于LLV...

snsn1984
2013/02/28
648
0

没有更多内容

加载失败,请刷新页面

加载更多

elasticsearch查询20公里以内的数据并按距离升序排序data es写法

NativeSearchQueryBuilder queryBuilder = new NativeSearchQueryBuilder();BoolQueryBuilder boolQueryBuilder=new BoolQueryBuilder();//这暂wei加入业务查询条件 queryBuilder.withQue......

为何不可1995
27分钟前
5
0
superset在线pip部署

1、安装依赖sudo yum install gcc libffi-devel python-devel python-pip python-wheel openssl-devel libsasl2-devel openldap-devel报错:没有可用软件包 python-pip。没有可用软件包 ......

阿伦哥-
32分钟前
4
0
photoshop简单使用

PS基本操作与图片格式 photoshop工具 组成 菜单项 工具栏 辅助面板 图片格式 jpg png gif 注: psd photoshop CC链接: https://pan.baidu.com/s/1LVa5R_btSjczLBwskCZidQ 提取码:sc3v 快捷...

studywin
34分钟前
4
0
springboot 整合pageHelper

今天跟大家聊聊springboot整合pageHelp,首先pageHelper是一个缓存式分页,分页步骤如下: 1 pom文件添加依赖 <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelp......

gaofei123
34分钟前
7
0
《DNS攻击防范科普系列1》—你的DNS服务器真的安全么?

DNS服务器,即域名服务器,它作为域名和IP地址之间的桥梁,在互联网访问中,起到至关重要的作用。每一个互联网上的域名,背后都至少有一个对应的DNS。对于一个企业来说,如果你的DNS服务器因...

大涛学弟
35分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部