
新设计团队
本书先对读者最难理解的复杂过程、关系和数据结构以动画视频的方式进行直观、形象的讲解。看过这些视频,读者就会对编译原理有一个概略、直观、整体的理解,从而很容易掌握更深的内容。纸质内容再将编译原理与GCC编译器的源代码有机联系起来,用了大量直观的图示、源代码、文字做详细讲解。本书没有用一个数学公式,力争用最简单易懂的语言把深奥的理论讲明白。读者在看完本书后会真正了解一个编译器是如何运行的,以及为什么要这么设计,更重要的是知道编译完的程序执行时在内存中的运行时结构是什么样的。
绝对可以给满分的书籍,每章节前半部分讲原理,后半部分讲实现。我觉得对于开发工作不写编译器的来说每章节看前半部分就足够了。具体实现非常复杂,没开发过商业编译器的我觉得没必要读,读了也记不得,本身自己也不开发。
粗略的了解一下 C 语言编译过程: 词法分析器从源程序的字符串中识别出一个个符号,并按序保存。 语法分析器的作用,就是将词法分析器识别出的符号一个一个的与这套模板进行匹配,匹配上这套模板中的某个语法,就可以识别出一句完整的语句,并确定这条语句的语法。 形成语法树之后,将语法树转换成中间代码,然后选定具体的CPU操纵系统后,中间代码就可以转化为目标代码及汇编代码,然后由汇编器依照选定操作系统的目标文件格式,将汇编文件转化为具体的目标文件。 然后由链接器将目标文件链接成可执行文件。
以为是要讲编译原理,基本都是在讲gcc的源码分析,而且贴大段的代码,先调用xxx,再调用xxx,代入感很差,体验也是割裂的,看完也只停留在知其然上。
花了四个小时,过了一遍,代码分析过程没看,大体上看了主要流程,对于第一本编译书,还是有很多收获的,
没读完,大致阅读了一下。我看不懂。感觉是学不到位。我还是先去看其他的书再回来阅读。不过图多确实讲的比较好
编译系统最重要的是优化 这本书确实介绍了一些有用的东西 但是仅限于前端 并没有着重分析backend 作为入门书 确实不错 但是想要进一步了解编译系统 这本书是远远不够的 一家观点
书是好书,但微信读书对代码的排版就太差劲了,指针运算符都以html转义字符的形式出现了,希望微信读书团队对此有所改进
"本书是编译原理领域的鸿篇巨著,中文版尚未出版,英文版权已经输出到美国,将在世界范围内产生重要影响。从以下多个角度讲,本书都具有重要的里程碑意义: 它让编译原理不再像是一门高深晦涩的“数学课”,而是一个可以调试、可以接触、可以真切感受的理论体系。本书用1140余幅信息量巨大的运行时结构图和视频动画取代了同类书中复杂枯燥的数学公式,更加立体和直观,生动地将编译后的执行程序在内存中的运行时结构图展现了出来; 它将GCC源代码、编译原理、运行时结构、编译系统原理的内在关系、逻辑与原理梳理清楚了,并将它们结合成一个整体。真正能够让读者透彻掌握编译器如何运行和如何设计,以及为什么要这么设计; 它是系统解读著名商用编译器GCC核心源代码的著作,GCC源代码一共有600万行,为了便于讲解和阅读,本书进行了取舍和裁剪,讲解了与编译本质相关的最核心的60万行代码。"
刚看了推荐和序,就感觉有看的必要...未看已先评...,我的习惯...
草草翻过,代码占比过高,确实缺乏对基本思路的讲解,比如,链接器的具体原理?动态和静态在编译和运行时的区别?