一、实验目的
通过定义语言的上下文无关文法、为适应递归下降分析改造文法,牢固掌握自顶向下语法分析理论;设计语法单位符号的递归下降子程序,设计词法分析器与语法分析器接口,完成语法分析器的代码编写和测试,能够熟练掌握递归下降分析的实现方法,掌握处理算术表达式语法结构的编程技巧,最终获得较强的复杂软件开发能力。
二、实验内容
1、语法分析器设计
(1)构造适合递归下降分析的文法;
(2)设计算术表达式文法的数据结构。
2、语法分析器实现
(1)实现辅助例程;
(2)实现语法单位符号的递归子过程;
(3)构造测试文件,调试语法分析器(基本要求:能通过命令行界面输出分析结果)。
说明:单词获取应使用你在实验一中实现的词法分析器。
三、实验过程
1)给出程序处理流程图;
E -> TE E
-> +TE | -TE
| ε
T -> FT T
-> *FT | /FT
| ε
F -> (E) | i
LL(1)
2)给出程序模块结构图;
3)给出程序调试运行结果。