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

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

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

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


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

目录
相关文章
|
IDE 编译器 开发工具
编程前的准备:编译器的安装
编程前的准备:编译器的安装
52 0
|
5月前
|
编译器 C语言
C语言编译详解:GCC分步编译与一次编译多个文件
C语言编译详解:GCC分步编译与一次编译多个文件
498 2
|
6月前
编译期编程
编译期编程
|
前端开发 C语言 iOS开发
基于LLVM的编译原理简明教程 (1) - 写编译器越来越容易了
跟学院派的厚书给大家的印象不同,其实用LLVM写个简单的编译器是件容易的事情,因为大部分事情LLVM都替我们做了。
8335 0
|
前端开发 IDE 编译器
LLVM编译器前端 Clang 简介
昨天晚上安装rails的开发环境,被ruby的编译搞的有点崩溃。下载的ruby的源码不能用系统自带的gcc -4.21编译,也不能用系统自带的clang进行编译,必须下载并使用gcc -4.2进行编译才能通过。今天稍微看看编译器的一些背景。
561 0
LLVM编译器前端 Clang 简介
|
编译器 iOS开发 Windows
带你读《LLVM编译器实战教程》之一:构建和安装LLVM
本书的前半部分将向您介绍怎么样去配置、构建、和安装LLVM的不同软件库、工具和外部项目。接下来,本书的后半部分将向您介绍LLVM的各种设计细节,并逐步地讲解LLVM的各个编译步骤:前段、中间表示(IR)、后端、即时编译(JIT)引擎、跨平台编译和插件接口。本书包含有大量翔实的示例和代码片段,以帮助读者平稳顺利的掌握LLVM的编译器开发环境。
20197 0
|
C++ 编译器 C语言
带你读《LLVM编译器实战教程》之二:外部项目
本书的前半部分将向您介绍怎么样去配置、构建、和安装LLVM的不同软件库、工具和外部项目。接下来,本书的后半部分将向您介绍LLVM的各种设计细节,并逐步地讲解LLVM的各个编译步骤:前段、中间表示(IR)、后端、即时编译(JIT)引擎、跨平台编译和插件接口。本书包含有大量翔实的示例和代码片段,以帮助读者平稳顺利的掌握LLVM的编译器开发环境。
|
编译器 C++ 前端开发
带你读《LLVM编译器实战教程》之三:工具和设计
本书的前半部分将向您介绍怎么样去配置、构建、和安装LLVM的不同软件库、工具和外部项目。接下来,本书的后半部分将向您介绍LLVM的各种设计细节,并逐步地讲解LLVM的各个编译步骤:前段、中间表示(IR)、后端、即时编译(JIT)引擎、跨平台编译和插件接口。本书包含有大量翔实的示例和代码片段,以帮助读者平稳顺利的掌握LLVM的编译器开发环境。
|
前端开发 rax C语言