精选优质文档-倾情为你奉上实验二 递归向下分析法一、 实验目和要求根据某一文法编制调试递归下降分析程序,以便对任意输入的符号串进行分析。 本次实验的目的主要是加深对递归下降分析法的理解。 二、 实验内容 (1) 功能描述 1、递归下降分析法的功能 词法分析器的功能是利用函数之间的递归调用模拟语法树自上而下的构造过程。 2、递归下降分析法的前提 改造文法:消除二义性、消除左递归、提取左因子,判断是否为 LL(1)文法, 3、递归下降分析法实验设计思想及算法 为 G 的每个非终结符号 U 构造一个递归过程,不妨命名为 U。 U 的产生式的右边指出这个过程的代码结构: 1)若是终结符号,则和向前看符号对照, 若匹配则向前进一个符号;否则出错。 2)若是非终结符号,则调用与此非终结符对应的过程。当 A 的右部有多个产生式时,可 用选择结构实现。 具体为: (1) 对于每个非终结符号U-u1|u2|un处理的方法如下:U() ch=当前符号; if(ch可能是u1字的开头)处理u1的程序部分; else