seulex编译原理课程设计

上传者: majun19871001 | 上传时间: 2019-12-21 20:17:29 | 文件大小: 1.93MB | 文件类型: zip
(1)Lex输入文件的解析: ·主函数main()实现对Lex输入文件结构的解析 ·int checkType(char c)函数判断是定义段开始?定义段结束?规则段? (2)正规表达式的解析: ·void replaceID(string &re)函数将用户标示id转换成re ·通过对正规表达式的解析的解析可以将规则段的模式部分全部转换成正规表达式 (3)一个正规表达式到NFA的转换算法的实现 ·void generateNFA(const string & re,vector &tnfa,vector &isTer,int index)函数完成正规表达式到NFA的转换 其中:re:正规表达式 tnfa:数据结构是vector,即NFA的每个结点是list (关于NFA的数据结构的描述见后面) isTer:统计tnfa中接受状态结点(isTer[i]!=0表示结点i为接受态) (3)多个NFA的合并 ·void joinNFA(vector &nfa1,const vector &nfa2) 函数完成了NFA nfa1和nfa2的合并,从总体来看起到所有NFA的合并 ·合并NFA的基本原理:将nfa2的开始的点中的内容全部拷贝给nfa1的开始结点然后,再把nfa2中除了开始点以外的点连接到nfa1的末尾即可,注意结点编号的变化 (4)NFA的确定化算法的实现 ·void TODFA()函数完成NFA到DFA的转换 ·在进行NFA确定化算法的同时,自动机的接受态集合也做相应的变换 vector nfaIsTer vector dfaIsTer

文件下载

资源详情

[{"title":"( 28 个子文件 1.93MB ) seulex编译原理课程设计","children":[{"title":"SeuLex项目","children":[{"title":"编译原理课程设计报告(SeuLex).doc <span style='color:#111;'> 194.00KB </span>","children":null,"spread":false},{"title":"SeuLex项目.sln <span style='color:#111;'> 901B </span>","children":null,"spread":false},{"title":"SeuLex项目.suo <span style='color:#111;'> 23.50KB </span>","children":null,"spread":false},{"title":"SeuLex项目.ncb <span style='color:#111;'> 2.49MB </span>","children":null,"spread":false},{"title":"SeuLex项目","children":[{"title":"yytab.h <span style='color:#111;'> 702B </span>","children":null,"spread":false},{"title":"yylex.cpp <span style='color:#111;'> 57.84KB </span>","children":null,"spread":false},{"title":"lex.l <span style='color:#111;'> 1.77KB </span>","children":null,"spread":false},{"title":"~WRL2183.tmp <span style='color:#111;'> 67.00KB </span>","children":null,"spread":false},{"title":"Debug","children":[{"title":"seulex.obj <span style='color:#111;'> 1.99MB </span>","children":null,"spread":false},{"title":"SeuLex项目.exe.embed.manifest <span style='color:#111;'> 403B </span>","children":null,"spread":false},{"title":"vc80.pdb <span style='color:#111;'> 436.00KB </span>","children":null,"spread":false},{"title":"SeuLex项目.exe.embed.manifest.res <span style='color:#111;'> 468B </span>","children":null,"spread":false},{"title":"BuildLog.htm <span style='color:#111;'> 5.99KB </span>","children":null,"spread":false},{"title":"mt.dep <span style='color:#111;'> 64B </span>","children":null,"spread":false},{"title":"vc80.idb <span style='color:#111;'> 227.00KB </span>","children":null,"spread":false},{"title":"SeuLex项目.exe.intermediate.manifest <span style='color:#111;'> 385B </span>","children":null,"spread":false}],"spread":true},{"title":"ReadMe.txt <span style='color:#111;'> 568B </span>","children":null,"spread":false},{"title":"DFA.txt <span style='color:#111;'> 12.61KB </span>","children":null,"spread":false},{"title":"seulex.cpp <span style='color:#111;'> 22.83KB </span>","children":null,"spread":false},{"title":"~$原理课程设计报告(SeuLex).doc <span style='color:#111;'> 162B </span>","children":null,"spread":false},{"title":"Re_Act_NFA.txt <span style='color:#111;'> 8.01KB </span>","children":null,"spread":false},{"title":"~WRL1189.tmp <span style='color:#111;'> 66.50KB </span>","children":null,"spread":false},{"title":"SeuLex项目.vcproj <span style='color:#111;'> 3.88KB </span>","children":null,"spread":false},{"title":"SeuLex项目.vcproj.0F9C05CB33D74C5.d4234ggdh.user <span style='color:#111;'> 1.39KB </span>","children":null,"spread":false},{"title":"NFA.txt <span style='color:#111;'> 7.13KB </span>","children":null,"spread":false}],"spread":false},{"title":"debug","children":[{"title":"SeuLex项目.ilk <span style='color:#111;'> 974.70KB </span>","children":null,"spread":false},{"title":"SeuLex项目.pdb <span style='color:#111;'> 2.07MB </span>","children":null,"spread":false},{"title":"SeuLex项目.exe <span style='color:#111;'> 376.00KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true}]

评论信息

  • longside123 :
    好评,过了编译实验
    2015-06-10
  • winzzq :
    可惜我们是用JAVA开发的,拿来参考参考
    2014-11-03
  • terror1993 :
    很好用。非常有参考价值
    2013-09-11
  • eastlaugher :
    果断是一份实在的报告,内容翔实,注释清楚!
    2013-06-19
  • 想飞的星星 :
    很好用。报告对于代码也阐释的很清楚。
    2013-06-03

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明