语法分析词法分析实验报告

语法分析词法分析实验报告

ID:44668296

大小:431.27 KB

页数:8页

时间:2019-10-24

语法分析词法分析实验报告_第1页
语法分析词法分析实验报告_第2页
语法分析词法分析实验报告_第3页
语法分析词法分析实验报告_第4页
语法分析词法分析实验报告_第5页
资源描述:

《语法分析词法分析实验报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、编毎原理实验报告词法分桥和语法分析专业班级jk0701学生姓名学号07281011实验题目:研究性学习专题一词法分析程序构造原理与实现技术研究性学习专题二递归下降语法分析设计原理与实现技术-实验目的(1)研究性学习专题一V标识符>f字母丨V标识符〉字母丨V标识符>数字V无符号整数〉f数字丨V无符号整数〉数字V单字符分界符〉->4-I-I*I;I(I)V双字符分界符V大于〉二IV小于>二IV小于>>丨V冒号〉二丨V斜竖>*V小于〉V等于>-*=V大于>f>V冒号〉f:V斜竖〉f/该语言的保留字:begine

2、ndifthenelsefordowhileandornot[设计说明](1)该语言大小写不敏感;(2)字母为a-zA-Z,数字为0-9;(3)可以对上述文法进行扩充和改造;(4)7*……*厂为程序的注释部分。(2)研究性学习专题二G[E]:E->TE,Ez->ATE/

3、eT—FT'T,->MFTZ

4、eF-(E)

5、iA->+卜M->*

6、/[设计说明]终结符号i为用户定义的简单变量,即标识符的定义。二实验分析过程词法分析程序功能描述:根据上述正则文法,输入一串字符串,输出一串二元式序列组成的中间文件,在实现

7、的过程中,能发现输入串中的错误。语法分析程序功能描述:根据词法分析输出的二元式序列,对二元式序列进行判定,时候满足语法的要求,若满足,则输出结果为正确,反之,为错误。主要数据结构:用TokenBean类存储数字,标识符,保留字的类别,表示,和识别名publicclassTokenBean{Stringname;Stringcode;intkind;}JIJArrayList來装TokenBean类程序结构描述:(1)词法分析过程用到的主要函数publicbooleanisNumber(charch)//判

8、断输入字符是否为整数publicbooleanisAlph(charch)//判断输入字符是否为字母privatevoidisKey(Stringstr)//判断str是关键字还是标识符publicvoidexcute(Strings)//对字符串s进彳亍分析,得出二元式(2)语法分析过程用到的主要函数publicbooleanipresent(intkind)//识别保留字,标识符,整数以下是判断函数,入口为E()若E为真,则二元式序列满足语法分析privatebooleanE()//E~TErpriv

9、atebooleanEl()//Ez-fATE'

10、£privatebooleanA()//A-+1-privatebooleanT()//T-FTfprivatebooleanT1()//T*fMFT’

11、;privatebooleanM()//M-**1/privatebooleanF()//F-(E)

12、i流程图("词法分析程序执行图:Rxcujte(s>开始►判断结束(2)语法分析程序流程图:三验结果及分析正确实例:a+b-c*d(1)词法分析过程输入:字符串输出:二元式序列并可以保存二元式序列(2)语

13、法分析过程对二元式序列进行判定,给岀的例题是正确的,所以结果为true错误实例分析:(a+b(1)词法分析过程输入:字符串输出:二元式序列并可以保存二元式序列代码显示区(a4-b打开文件语法分析文件代码tokenS示区[单字节符号]((,18)[标识符](a,12)[单字节符号](+,14)[标识符]

14、难点:在实现的过程中,对string类的不了解,从char转换到string的过程中,出现错谋。对程序的整体框架在开始的时候,考虑不周详,尤其是对while循环条件设置,通过不断地反复调试,能基木上实现词法分析和语法分析的功能。收获:能把用八图形界血和编程较好的实现在一起。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。