通过解剖分析现成软件的源代码来学习计算机的专业课程,是一种行之有效的途径。本书通过解剖一个LALR(1)语法分析的生成器——LEMON,来达到学习编译原理中有关LALR(1)语法分析的目的。
本书的结构安排,以LEMON在mmn()主函数中执行流为串联主线,在分析过程中,按遇见的顺序,逐个分析阐述每个函数的工作机制、相关的数据结构,以及它们互相之间发生的有机联系。全书分11章。第1章对LEMON进行概略性的介绍。第2章通过一个带有变量功能、具有可重载函数的桌面计算器的开发实例,介绍如何应用LEMON来开发应用程序。第3章分析LEMON如何对命令行中输入的参数进行处理。第4章阐述LEMON中的各种数据结构以及它们的初始化过程。第5章为LEMON对语法文件内容进行词法扫描,并介绍如何将磁盘上的语法文件转换为机器内存里的各种数据结构。第6章讲述寻得符号Firsr集并建立优先级的过程。第7章讨论形成LR(0)分析器的各个状态和建立各项目的传播链表。第8章为寻找各语法符号的Follow集元素。第9章阐述在已有LR(0)分析器的基础上,添加先行符从而建立LALR(1)分析器的机理和过程。第10章是本书最重要的部分,讨论了LEMON如何与精心设计的lempar.c模板文件互相配合,最终生成LALR(1)类型语法分析器的C语言版文件。第11章非常简要地介绍了语法分析器内函数调用与数组之间的关系、它们的良好封装性,以及如何删除调试排错功能以获得更小的软件体积。
本书可作为大学计算机专业高年级学生和研究生的教材或教学参考书,也可作为从事计算机系统研究或应用开发人员的参考书。
本书是第二次世界大战末期美国科学研究发展局主任V•布什提交给总统的科学报告,回答了罗斯福总统提出的有关美国战后科学发展的四
作为一位平面设计师,为什么一定要依赖那些已有的字体、用别人的图形——如果你能够创造自己的标志、字体和书写的话。莱斯利·凯
《全能鼓手实战教程——648句技巧训练》内容简介:本书是一本鼓手必备的练习宝典。涵盖了爵士鼓、小军鼓等各类鼓乐学习过程中初级、
AstheindustrystandardmethodforenrichingthepresentationofHTML-basedwebpages,Casca...
内容简介本书是一部将模糊逻辑与神经网络进行结合研究的论著,介绍了作者近年来在模糊逻辑与神经网络的结合研究与探索中的部分研
《数据库可靠性工程:数据库系统设计与运维指南》内容简介:数据是当今企业的宝贵资产,设计、构建并维护数据存储的重要性不言而喻
说服力-工作型PPT该这样做 本书特色 畅销书《说服力 让你的ppt会说话》作者再?倾情奉献ppt达人:大乘起信/lonely_fish/小蚊子/蝇子/秋叶等...
本书透彻地讲解了Flash组件开发、Flash游戏开发,以及SWF文件加解密与Flash文件综合性保护这三个话题。“弥赛亚之书”和“逆水游
《光纤通信(第2版)》内容涉及光纤通信领域的多个方面,具体包括传输光纤、半导体光源和光检测器、无源光器件、光放大器、光纤通信
《精神科医生破案笔记2:青山医院之谜》内容简介:1、诡异之地,进入必疯!每一种疯狂试探的背后,都是破碎的灵魂、病态的躯体; 2
欢迎您选择一种更高效的学习HTML和CSS的方式。不管您设计和建立新网站,还是想更好地控制现有网站,都可以在《HTML&CSS设计与构建
《超级谈话术》内容简介:有些问题,难以启齿,不好开口,但又事关你的利益,有些问题,一聊就“炸”,关系会僵,但你又不得不聊!
《绘画之美》内容简介:《绘画之美》是北京大学哲学系教授、中华美学学会副会长朱良志对中国传统文人画的解析与品读。作者选取了元
《区块链技术进阶指南》内容简介:本书从区块链发展简史、账本模型、网络、共识、合约引擎及应用等多个方面进行系统介绍,希望帮助
空间信息系统的集成与实现 本书特色 李德仁院士为课题主持人,由数十名教授、副教授、博士生和硕士生组成课题组,对空间信息系统的集成与实现进行了深入的理论探讨和一系...
无线自适应接入机制及OPNET仿真 本书特色 《无线自适应接入机制及opnet 仿真》主要介绍了基于ieee802.11协议的无线接入优化机制和自适应接入机制的...
《布克·华盛顿与杜波依斯的思想之争及其对非裔政治领袖的影响(英文版)》内容简介:20世纪初,布克·华盛顿与杜波依斯就非裔美国
科技译名统一工作是指为减少、消除科技译名混乱的现象,给科技术语定出规范的中文译名,并推而广之的工作。本书对民国时期科技译
Java成为世界上编程语言之一是有其优势的。熟悉JavaSE的程序员可以轻松地进入到JavaEE开发中,构建出安全、可靠和具有扩展性的企
那是一個不羈的年代:一個充滿示威抗議、迷幻藥實驗、反傳統社群,和無政府理想主義的時代。一九六○年代,美國社會歷經大幅動盪