为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 实验二自顶向下语法分析

实验二自顶向下语法分析

2020-09-18 2页 doc 39KB 23阅读

用户头像

is_597436

暂无简介

举报
实验二自顶向下语法分析实验二递归下降法判断算术表达式的正确性学时数:2-4、实验目的和要求1、用递归下降技术实现语法分析器;2、理解自顶向下语法分析方法;3、熟练掌握预测分析程序的构造方法。二、实验内容算术表达式的文法是G[E]:EtE+T|TTtT*F|fFt(E)|i用递归下降分析法按文法G[E]对算术表达式(包括+、*、()的算术表达式)进行语法分析,判断该表达式是否正确。三、实验步骤1、准备:阅读课本有关章节,将上述算术表达式的文法改造成LL(1)文法(即消除左递归和提取左公因子);按P87例4.12编写程序。2、上机调试,发现错误,分析错...
实验二自顶向下语法分析
实验二递归下降法判断算术表达式的正确性学时数:2-4、实验目的和要求1、用递归下降技术实现语法分析器;2、理解自顶向下语法分析方法;3、熟练掌握预测分析程序的构造方法。二、实验算术表达式的文法是G[E]:EtE+T|TTtT*F|fFt(E)|i用递归下降分析法按文法G[E]对算术表达式(包括+、*、()的算术表达式)进行语法分析,判断该表达式是否正确。三、实验步骤1、准备:阅读课本有关章节,将上述算术表达式的文法改造成LL(1)文法(即消除左递归和提取左公因子);按P87例4.12编写程序。2、上机调试,发现错误,分析错误,再修改完善。四、测试要求1、为降低难度,表达式中不含变量(只含单个无符号整数或i);2、如果遇到错误的表达式,应输出错误提示信息(该信息越详细越好);3、测试用的表达式建议事先放在文本文件中,一行存放一个表达式,以分号结束。而语法分析程序的输出结果写在另一个文本文件中;4、选作:对学有余力的同学,可增加功能:当判断一个表达式正确时,输出计算结果。5、程序输入/输出示例:如参考C语言的运算符。输入如下表达式(以分号为结束)和输出结果:(a)1;或i;输出:正确(b)1+2;或i+i;输出:正确(c)(1+2)*3+4-(5+6*7);或(i+i)*i+i-(i+i*i)输出:正确(d)((1+2)*3+4或((i+i)*i+i;输出:错误,缺少右括号(e)1+2+3+(*4/5)或i+i+i+(*4/5);输出:错误五、实验要求1、写出修改后LL(1)文法2、通过对核心代码做注释或通过程序图的方式说明递归下降分析程序的实现思想。3、写出调试程序出现的问题及解决的方法。4、给出测试的结果。六、思考(选作)文法G[E]所构造算术表达式只包含+和*。请修改文法和程序,使得该语法程序可判断包含减号和除号的算术表达式的正确性。[实验指导]将文法G[E]改造为LL(1)文法如下:G[E]:EtTE'E't+TE'|£TtFT'T't*FT'|£Ft(E)|i[补充说明]预测分析法分析程序可以从网上下载,但要求:(1)理解该程序,在实验报告中说明该程序所使用的文法及修改后的文法;(2)实验报告要求同上
/
本文档为【实验二自顶向下语法分析】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索