2024年5月25日发(作者:)

实验二:语法分析(递归下降法)

一、实验目的

1、掌握语法分析的基本原理;

2、掌握递归下降的分析法;

3、熟悉C语言程序设计。

二、实验准备

微机CPU主频1.3G以上,128M内存,安装好C语言,PASCAL语言,或C++。

三、实验时间

2学时

四、实验内容

已给语言文法,写出该文法的递归下降法语法分析器。

输入:源符号串。 输出:语法是否合法。

1

文法:

(1) <程序> ::= begin<语句串>end

(2) <语句串> ::= <语句>{;<语句>}

(3) <语句> ::= <赋值语句>

(4) <赋值语句> ::= ID:=<表达式>

(5) <表达式> ::= <项>{+<项>|-<项>}

(6) <项> ::= <因子>{*<因子>|/<因子>}

(7) <因子> ::= ID|NUM|(<表达式>)

五:源程序:

lrparser()对应 <程序>

yucu() 对应 <语句串>

statement() 对应 <语句>

expression()对应 <表达式>

2