实验二语法分析要求.doc

上传人:苏美尔 文档编号:6348763 上传时间:2020-10-31 格式:DOC 页数:2 大小:70.50KB
返回 下载 相关 举报
实验二语法分析要求.doc_第1页
第1页 / 共2页
实验二语法分析要求.doc_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

《实验二语法分析要求.doc》由会员分享,可在线阅读,更多相关《实验二语法分析要求.doc(2页珍藏版)》请在三一文库上搜索。

1、实验二:语法分析实验 一、实验目的根据某一文法编写语法分析程序,以便对任意输入的符号串进行分析。本次实验的目的主要是加深对递归下降分析法的理解。注:也可以采用预测分析方法、算符优先分析方法、LR分析方法进行分析。具体参照课本上的说明,以下是递归下降分析法的介绍。二、实验预习提示1、 递归下降分析法的功能语法分析器的功能是利用函数之间的递归调用模拟语法树自上而下的构造过程。2、 递归下降分析法的前提改造文法:消除二义性、消除左递归、提取左因子,判断是否为LL(1)文法。3、 递归下降分析法实验设计思想及算法为G的每个非终结符号U构造一个递归过程,不妨命名为U。U的产生式的右边指出这个过程的代码结

2、构:(1)若是终结符号,则和向前看符号对照,若匹配则向前进一个符号;否则出错。(2)若是非终结符号,则调用与此非终结符对应的过程。当A的右部有多个产生式时,可用选择结构实现, 具体为:(1)对于每个非终结符号U-u1|u2|un处理的方法如下 U( ) ch=当前符号; if(ch可能是u1字的开头) 处理u1的程序部分; else if(ch可能是u2字的开头)处理u2的程序部分; . else error();(2)对于每个右部u1-x1x2xn的处理架构如下: 处理x1的程序; 处理x2的程序; 处理xn的程序;(3)如果非终结符U有空产生式:U ,则还需考虑ch属于Follow(U)的情况。三、实验过程和指导:(一) 准备:1. 阅读课本有关章节。2. 初步编制好程序。3. 准备好多组测试数据。(二) 上机:(三) 程序要求:对算术表达式文法,用递归下降分析法(或预测分析方法、算符优先分析方法等)对任意输入的符号串进行分析,如合法给出相应信息,如果不合法,最好能给出在哪个产生式出现的问题。算术表达式至少包含+、-、*、/、()。例如:i1 + i2 * ( 345 - i3 / 20 )又如:12*(34+56)/ 78-9提示:先做词法分析,然后语法分析。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1