编译系统透视

出版日期:2016-3-25
ISBN:9787111498585
作者:新设计团队
页数:1041页

作者简介

第1章的前半部分首先讲解程序的运行时结构。编译器正是将源代码转化为可执行程序并形成运行时结构的工具。对于只是想提高开发能力的程序员,这部分几乎起到了90%的作用。第1章的后半部分对整体的编译过程做了一个综述。当读者对整体有概念的时候,再去看每个章节的具体内容,会更容易理解。第2章用一个简单案例讲解词法分析,词法分析是把源文件文件中的内容读出并识别出符号的过程。第3章用词法分析的简单案例讲解语法分析,语法分析是在词法分析的结果中识别出语句的过程。第4章仍用前面的简单案例生成中间结构及目标代码。第5、6章用几个更为复杂的案例来分析语法及生成中间结构及目标代码的过程。至此,严格意义上的编译过程已经讲解完毕。为了让读者对可执行程序的*终生成有一个完整的了解,我们专门安排了讲解汇编器、链接器的内容,这就是第7章。第7章详细讲解如何将目标代码转变为可执行程序,包括文件格式、汇编器和链接器的内容。第8章讲预处理,从编译器的执行顺序来看,预处理器的执行是比较靠前的,之所以把预处理放在*后讲,是因为预处理比较独立,在读者已经了解整个编译过程中之后再讲解,会更容易理解。

书籍目录

作者简介
前言
第1章运行时结构及编译过程概述
第2章词法分析
第3章语法分析
第4章语法树到目标代码
第5章语句拓展案例的编译过程
第6章数据拓展案例的的编译过程
第7章汇编与链接
第8章预处理
附录RTX定义
作者的话

内容概要

新设计团队,中国科学院大学的教师杨力祥发起,成立于世纪之交,团队成员全部都是杨力祥老师的得意弟子,现在他们是很多企业核心和支柱。新设计团队不断发展、优胜劣汰、适者生存、自然形成。团队在计算机领域中始终只对最基础的、有体系的事情感兴趣,喜欢从根节点解决问题,目前已经在编译器和操作系统等领域取得了突破性的成果。


 编译系统透视下载 更多精彩书评



发布书评

 
 


精彩书评 (总计2条)

  •     我正在看开头,这是第6页,可是图却在第9页。为啥我要翻一整页才能看到图?这种割裂感差极了!!!
  •     作者:慕容渊链接:https://www.zhihu.com/question/43538570/answer/111482841来源:知乎著作权归作者所有,转载请联系作者获得授权。書已經到手。先大致翻了一下。既然如此,那也就說幾句吧。我翻過(是翻過,不是翻譯過,抱歉,辜負了大家的期待)的編譯書籍有好幾本了,龍書自不必說,一些實踐性的書籍也翻過,拜一些淺白的書籍所賜,實現一個腳本語言處理器什麼的是可以做到的,而且確實照着別人的書籍抄來並實現過。除此之外,LISP系的當然也接觸過,至於實現函數式的語言,讀王垠的《怎樣寫一個解釋器》便已可入門,當然,認真點的話,什麼SICP,EOPL,schemer 三部曲都是要讀的 -- 這些有的在我的計劃中,还沒讀完,所以我也就不評論這些書籍怎樣怎樣了。如樓上各位同學所言,《編譯系統透視》這本書,雖是鴻篇巨制不錯,但重點在gcc的實現,而且是重前端不重後端(至少篇幅上來說是這樣)。先說這本書的優點。1. 圖文並茂是真的。講的似乎也很淺白易懂。看得出來寫得還是很用心的,圖真的好詳細,配合代碼注釋,只要讀者願意花時間,看不懂簡直是不可能的。不過如前面幾位大大所講,排版還有待進步就是了。2. 解讀的實例是 gcc, 盡管現在 LLVM 各種叫囂,但是目前爲止,gcc 仍是我們這個時代最重要的計算機技術的基石。對於想要了解 gcc 內部實現的同學來說,確實是再好也沒有了。不過說真的,應該是比較舊的 gcc 版本了吧。3. 順帶也講了些匯編器和鏈接器的事情。不過這書的缺點也是蠻多的:1. 翻了找了一會子,只看到作者吹牛逼,但沒提及網路資源究竟放在哪讓讀者去獲取(是,承認你們有水平,有幹貨,但是我要資源和說明...)。2. 同樣書中似乎也沒明確說明解讀的 gcc 源碼是哪一個版本。應該是比較舊的版本了吧,前面講運行時環境那些對我來說基本是廢話了的東西,看了下基本是 32 位的東西了,實際上 64 的調用約定已經不是 32 位調用約定那樣了。而且標題是運行時環境,正確的結構應該是C語言的運行時環境 -> 基於x86_32構架的調用約定。x86_64的呢...3. 嗯,根據篇幅來看,後端的優化講得不多。由於前端是針對 gcc 的代碼,所以真的要很耐心地啃。可是如果只是想要實現一門簡單的腳本的話,可以用很多更簡單的技術手段的... 私以爲,除了像C++這麼變態的語言,前端真的不是重點。總的來說,這本書在實踐方面稱得上是奇書一本了,但結構、理論補充方面確實有待改善。這也就使得,這本書雖然給出了很多很多的實踐細節,但在理論上做不到取代原龍書的位置,雖然封面上印的是中國龍。不過也算各有所長吧。原龍書還是必要的哈哈哈哈哈,你知道原龍書爲什麼很屌嗎,原因就是它啥都說一點又啥都沒說似的哈哈哈哈哈。至於想把這本書當成編譯原理入門的書籍來看,個人覺得還是算了,因爲這書可能會花不少時間,如果你不是真的想維護 gcc 什麼的,花這麼多時間來學習 gcc (而且是一個舊版本的)前端的意義並不是那麼大。當然 gcc 畢竟是工業級,有空研究一下還是不錯的,比如裏面的 gimple 什麼的。所以如果想要入門編譯原理,建議還是先大致過一下原龍書哪類書籍,看原龍書的時候不必什麼細節都摳,有個大概輪廓甚至不求甚解問題都不大,然後再看類似《自制編程語言》什麼的,如果實在是想要做編譯型的語言,也有《編譯器設計之路》(同樣也是完整給出了一個C語言實現,但要薄很多)這樣的書籍供你選擇。以上。

精彩短评 (总计4条)

  •     由于工作关系需要研究gcc,抱着很大希望买了回来,结果太失望了。我觉得这本书走到了另外一个极端,完全用图代替了文字,结果比没有图还失败, 不仅眼花缭乱,并且给阅读带来极大障碍。同时,对于一些背景知识和理论知识介绍的太少。另外,编辑能不能再细心一点,所有的代码都存在对齐问题。综上,我退货了。个人见解,不喜勿喷。
  •     买了这本书,看了三四个小时退了。
  •     书中有大量的代码,如果开发gcc当参考资料是有用的,但是用这本书来学习编译原理就不推荐了。所以对于我这种gcc开发人员还是很有帮助的,省去了我一些看代码的时间,毕竟市面上原来没有这样的书。
  •     书的内容还是很不错的,就是排版读起来很累,放弃了。
 

农业基础科学,时尚,美术/书法,绘画,软件工程/开发项目管理,研究生/本专科,爱情/情感,动漫学堂PDF下载,。 PDF下载网 

PDF下载网 @ 2024