《编译原理》 实验报告
一、实验目的:
编制一个递归下降分析程序,实现对词法分析程序所提供的单词序列的语法检查和
结构分析。
利用 C 语言编制递归下降分析程序,并对简单语言进行语法分析。
二、实验原理(可以流程图的形式出现,加以文字说明)
1.待分析的简单语言的语法
2.用扩充的 BNF 表示如下:
(1)<程序>::=begin<语句串>end
(2)<语句串>::=<语句>{;<语句>}
(3)<语句>::=<赋值语句>
(4)<赋值语句>::=ID:=<表达式>
(5)<表达式>::=<项>{+<项> | —项>}
(6)<项>::=<因子>{*<因子> | /<因子>}
(7)<因子>::=ID | NUM | (<表达式>)
3.待分析的简单语言的词法
(1)关键字:
begin if then while do end
所有关键字都是小写。
(2)运算符和界符:
: = + - * / < > <= <> >= ; ( ) #