北邮编译原理语法分析
12页1、编译原理语法分析班级:学号:姓名:ytinrete程序设计2题目:语法分析程序的设计与实现。实验内容:编写语法分析程序,实现对算术表达式的语法分析。要求所分析算术表达式由如下的文法产生。实验要求:在对输入表达式进行分析的过程中,输出所采用的产生式。方法1:编写递归调用程序实现自顶向下的分析。方法2:编写LL(1)语法分析程序,要求如下。(1) 编程实现算法4.2,为给定文法自动构造预测分析表。(2) 编程实现算法4.1,构造LL(1)预测分析程序。方法3:编写语法分析程序实现自底向上的分析,要求如下。(1) 构造识别所有活前缀的DFA。(2) 构造LR分析表。(3) 编程实现算法4.3,构造LR分析程序。方法4:利用YACC自动生成语法分析程序,调用LEX自动生成的词法分析程序。方法2:编写LL(1)语法分析程序首先对文法进行处理,预存文法的拓广文法,非终结符的FIRST集和FOLLOW集。其次编程实现算法4.2,为给定文法自动构造分析表。最后输入待处理字符串,通过实现的算法4.1,利用分析表分析出字符串,能够接受则返回接受,否则返回错误。源代码:#include #include #
2、include #include #include #include #include using namespace std;string original9= /保存原文法 E-E+T, E-E-T, E-T, T-T*F, T-T/F, T-F,F-i , F-(E), F-n;string G11= /拓广文法 E-TA,A-+TA,A-TA,A-e,T-FB,B-*FB,B-/FB,B-e,F-(E),F-i,F-n; string FIRST5=/first集 E:(in,/ EA:+-e,/ AT:(in,/ TB:*/e,/ BF:(in / F;string FOLLOW5=/follow集 E:)$,/ EA:)$,/ AT:+-)$,/ TB:+-)$,/ BF:+-*/)$,/ F;char VN5=E,A,T,B,F;/存储非终结符char VT9=i,n,+,-,*,/,(,),$;/存储终结符typedef struct Block char vn; /非终结符 char vt; /终结符 string s;/产生式 block;/存储分析预测表每个位置对
3、应的终结符,非终结符,产生式block table45;/ 5*9=45char is_vt(char a)/是否为非终结符,不是返回xfor(int i=0; i5; i+)if(a=VNi)return x;if(isalpha(a)/是字母return i;if(isdigit(a)/是数字return n;for(int i=0+2; i9; i+)if(a=VTi)return a;int find_table(char X, char a)/查找是否存在符合的产生式for(int i=0; i45; i+)if(tablei.vn=X&tablei.vt=is_vt(a)if(0!=tablei.s.size()return i;elsereturn 999;/error项return 999;void LL_one(string temp)stackST;/栈ST.push($);/初始化压入栈ST.push(E);cout栈 输入 输出endl;/23,20,5int i=0, j=1;/temp指针char X;docout99)cout9)cout: ;elseco
《北邮编译原理语法分析》由会员夏**分享,可在线阅读,更多相关《北邮编译原理语法分析》请在金锄头文库上搜索。
市场调查与预测试题(开卷)
二手车市场调查报告
行车安全十忌
幼儿园第十六周教学工作计划范文(四篇).doc
小学语文五年级教案狮子和鹿推荐三年级老师张慧的一篇教学日记
什么让生活更美好作文500字六年级
好客山东贺年会年味最浓乡镇村庄美陈评选工作
冬至祝福语句
品质部岗位职责说明书模板
2022年工商局计生工作总结范文
外墙保温施工技术交底
2021年厨房设备维修及排烟系统清洗工程合同
药店GSP日常工作清单
道路标线安全交底
2023年第一学期语文教研组工作总结
华中师范大学22春《企业战略管理》离线作业二及答案参考13
大学生检察院社会实践汇报
年质量管理体系管理评审报告
《生僻字》注音版(共2页)
2023年专项检查整改报告范文整改报告范文大全(共12篇)
2023-05-16 6页
2023-07-06 2页
2023-07-01 11页
2023-06-23 2页
2023-10-06 2页
2024-03-02 6页
2024-01-29 2页
2024-01-30 15页
2024-01-12 4页
2023-12-19 16页