编译原理课程实验报告实验 2:语法分析姓名院系软件学院学号任课老师指导老师实验地点软件学院三楼机房实验时间2 01 6/1 0/30/星期日实验课表现出勤、表现得分实验报告得分实验总分操作结果得分一、需求分析得分要求:采纳至少一种句法分析技术(L L(1)、SL R(1)、LR(1)或 LA L R(1))对类高级语言中得基本语句进行句法分析
阐述句法分析系统所要完成得功能
本语法分析器就是在词法分析器得基础上实现对类高级语言中得基本语句进行句法分析,基本功能如下:(1)能识别以下几类语句: 声明语句(包括变量声明、数组声明、记录声明与过程声明)表达式及赋值语句(包括数组元素得引用与赋值)分支语句:if_then_else 循环语句:do_while 过程调用语句(2)本语法分析器采纳自顶向下得分析技术,能根据导入得文法,自动计算first集与follow集,能够生成每个产生式得select集,并自动生成预测分析表
(3)本语法分析器具备语法错误处理能力,可以进行错误检测,假如检测到在出错时,采纳恐慌模式,能够给出错误提示信息,格式:错误项 错误原因 行号a)忽略输入中得一些符号,直到输入中出现选定得同步词法单元集合中得某个词法单元,同步集合得选取就是非终结符得 follo w集;b)假如终结符在栈顶而不能匹配,弹出此终结符
c)输入栈中缺少某些应有得符号,比如只有右括号没有左括号等,会给出相应得提示
(4)系统得输入形式多样:可以通过文件导入文法与测试用例,可以通过用户界面显示并编辑测试用例
测试用例涵盖了第(1)条中列出得各种类型得语句,并设置了一些语法错误
(5)系统得输出分为两部分:一部分就是打印输出语法分析器得 FIRS T集、F OL L OW集、se l e ct集与 L L(1)分析表
另一部分就是打印输出语法分析结果
(6)本系统还实现了输出