
LEMON语法分析生成器,由虞森林完整提供(pdf格式)。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
通过对现有软件源代码的深入剖析与精细分析,学习计算机专业课程的有效途径之一,便是以这种方式来掌握编译原理。本书致力于通过解析一个LALR(1)语法分析生成器——LEMON,来系统地提升读者在LALR(1)语法分析方面的理解。本书的组织结构围绕LEMON在mmn()主函数中执行流程展开,并按照函数出现顺序,逐个详细阐述每个函数的工作原理、相关的数据结构以及它们之间相互关联的有机联系。该书共分为11个章节。第一章对LEMON进行了一般性的概述和介绍。第二章则通过开发一个带有变量功能且具备可重载函数的桌面计算器实例,演示了如何利用LEMON来构建实际应用程序。第三章着重分析了LEMON如何处理命令行中输入的各种参数信息。第四章详细阐述了LEMON中所涉及的各种数据结构及其初始化过程。第五章介绍了LEMON对语法文件内容进行的词法扫描操作,并阐明了将磁盘上的语法文件转换成机器内存中相应数据结构的步骤。第六章描述了如何找到符号集Firsr集以及建立优先级的具体方法。第七章讨论了形成LR(0)分析器的各个状态以及建立各项目的传播链表的过程。第八章探讨了寻找语法符号Follow集元素的方法。第九章阐述了在已有的LR(0)分析器的基础上,通过添加先行符从而建立LALR(1)分析器的机理和实现过程。第十章是本书的核心内容,重点讨论了LEMON如何与精心设计的lempar.c模板文件协同工作,最终生成LALR(1)类型语法分析器的C语言版文件。最后,第十一章简要地介绍了语法分析器内函数调用与数组之间的关系、它们良好的封装性,以及如何移除调试和排错功能以获得更紧凑的软件体积。本书适用于大学计算机专业高年级学生和研究生的教材或教学参考书,同时也为从事计算机系统研究或应用开发人员提供了一个有价值的参考资料。
全部评论 (0)


