编译原理综合实习代码

上传者: qipanliming | 上传时间: 2019-12-16 10:48:25 | 文件大小: 101KB | 文件类型: RAR
能够根据单词的构词规则,完成MiniC语言中的单词的解析(词法分析),如果不符合单词的构词规则,请给出错误信息。如果源语言符合单词的词法规则,请输出二元式。 (注:利用JavaCC实现) 在词法分析的基础上,构造MiniC的LL(1)文法,利用JavaCC实现LL(1)文法,判断源语言是否符合MiniC的语法,如果不符合,请给出语法错误信息。 在语法分析的基础上,根据属性文法制导翻译,进行语义分析,输出四元式。如果源语言不符合MiniC的语义,请指出错误信息。 在平时实习课的基础上,整个编译系统要能够翻译数组(二维)翻译,if..else, for, while,赋值等语句嵌套的分析与翻译 1.整个编译系统利用JavaCC来实现. 2.用流的形式读入要分析的MiniC源程序。 3.语法分析,利用.jjt文件,这样语法分析,可以生成树的层次结构。 4.单词序列、树状的层次结构图、四元式的结果,输出到文件中。

文件下载

资源详情

[{"title":"( 40 个子文件 101KB ) 编译原理综合实习代码","children":[{"title":"Bianyi","children":[{"title":"Grammertree.txt <span style='color:#111;'> 8.23KB </span>","children":null,"spread":false},{"title":"Semantic_analysis.txt <span style='color:#111;'> 0B </span>","children":null,"spread":false},{"title":"src","children":[{"title":"Record.java <span style='color:#111;'> 471B </span>","children":null,"spread":false},{"title":"Node.java <span style='color:#111;'> 1.25KB </span>","children":null,"spread":false},{"title":"bianyiConstants.java <span style='color:#111;'> 4.89KB </span>","children":null,"spread":false},{"title":"JJTbianyiState.java <span style='color:#111;'> 3.25KB </span>","children":null,"spread":false},{"title":"bianyi.java <span style='color:#111;'> 74.31KB </span>","children":null,"spread":false},{"title":"TokenMgrError.java <span style='color:#111;'> 4.49KB </span>","children":null,"spread":false},{"title":"Token.java <span style='color:#111;'> 3.83KB </span>","children":null,"spread":false},{"title":"bianyiTokenManager.java <span style='color:#111;'> 32.30KB </span>","children":null,"spread":false},{"title":"bianyi.jjt <span style='color:#111;'> 26.99KB </span>","children":null,"spread":false},{"title":"MyNode.java <span style='color:#111;'> 1.70KB </span>","children":null,"spread":false},{"title":"bianyi.jj <span style='color:#111;'> 51.94KB </span>","children":null,"spread":false},{"title":"ParseException.java <span style='color:#111;'> 6.68KB </span>","children":null,"spread":false},{"title":"NodeList.java <span style='color:#111;'> 779B </span>","children":null,"spread":false},{"title":"SimpleCharStream.java <span style='color:#111;'> 12.23KB </span>","children":null,"spread":false},{"title":"SimpleNode.java <span style='color:#111;'> 2.36KB </span>","children":null,"spread":false},{"title":"bianyiTreeConstants.java <span style='color:#111;'> 1.54KB </span>","children":null,"spread":false}],"spread":false},{"title":"bin","children":[{"title":"bianyi.class <span style='color:#111;'> 40.42KB </span>","children":null,"spread":false},{"title":"bianyiConstants.class <span style='color:#111;'> 3.91KB </span>","children":null,"spread":false},{"title":"Token.class <span style='color:#111;'> 1.03KB </span>","children":null,"spread":false},{"title":"bianyiTokenManager.class <span style='color:#111;'> 15.54KB </span>","children":null,"spread":false},{"title":"Node.class <span style='color:#111;'> 304B </span>","children":null,"spread":false},{"title":"MyNode.class <span style='color:#111;'> 2.42KB </span>","children":null,"spread":false},{"title":"TokenMgrError.class <span style='color:#111;'> 2.69KB </span>","children":null,"spread":false},{"title":"bianyi.jjt <span style='color:#111;'> 26.99KB </span>","children":null,"spread":false},{"title":"SimpleCharStream.class <span style='color:#111;'> 8.04KB </span>","children":null,"spread":false},{"title":"NodeList.class <span style='color:#111;'> 1.62KB </span>","children":null,"spread":false},{"title":"bianyi.jj <span style='color:#111;'> 51.94KB </span>","children":null,"spread":false},{"title":"ParseException.class <span style='color:#111;'> 3.44KB </span>","children":null,"spread":false},{"title":"bianyiTreeConstants.class <span style='color:#111;'> 1.86KB </span>","children":null,"spread":false},{"title":"JJTbianyiState.class <span style='color:#111;'> 2.53KB </span>","children":null,"spread":false},{"title":"SimpleNode.class <span style='color:#111;'> 2.67KB </span>","children":null,"spread":false},{"title":"Record.class <span style='color:#111;'> 881B </span>","children":null,"spread":false}],"spread":false},{"title":".classpath <span style='color:#111;'> 301B </span>","children":null,"spread":false},{"title":"test.c <span style='color:#111;'> 875B </span>","children":null,"spread":false},{"title":".settings","children":[{"title":"org.eclipse.jdt.core.prefs <span style='color:#111;'> 629B </span>","children":null,"spread":false}],"spread":true},{"title":".project <span style='color:#111;'> 384B </span>","children":null,"spread":false},{"title":"Lexical_analysis.txt <span style='color:#111;'> 3.99KB </span>","children":null,"spread":false},{"title":"Symbol_table.txt <span style='color:#111;'> 537B </span>","children":null,"spread":false}],"spread":true}],"spread":true}]

评论信息

  • onlyyouling :
    很完整,很不错,很好的借鉴
    2013-07-01
  • huml126 :
    非常感谢,有这个代码参考,做起来轻松多了
    2013-07-01
  • ZhEngYuana :
    还不错,可以作为实验参考资料
    2013-05-30
  • tmjjjy :
    还不错,只是好多人都用的这个,参考吧!
    2013-02-27

免责申明

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