PL0编译器词法检查与语法分析器

上传者: laomai | 上传时间: 2019-12-21 20:05:40 | 文件大小: 1.21MB | 文件类型: rar
最近在教学生编译原理的入门,自己用了一周时间用c++写了这个词法分析器和语法检查器,供后来者参考。代码在vs2008中编译运行通过。提供了10个测试文件。 本代码用递归子程序法检查所给文件是否合乎语法,不做语义分析和代码生成以及模拟。

文件下载

资源详情

[{"title":"( 63 个子文件 1.21MB ) PL0编译器词法检查与语法分析器","children":[{"title":"PL0","children":[{"title":"FirstSymbols.h <span style='color:#111;'> 726B </span>","children":null,"spread":false},{"title":"OpKind.cpp <span style='color:#111;'> 1.41KB </span>","children":null,"spread":false},{"title":"symbol.h <span style='color:#111;'> 468B </span>","children":null,"spread":false},{"title":"Token.h <span style='color:#111;'> 530B </span>","children":null,"spread":false},{"title":"pl_11.txt <span style='color:#111;'> 153B </span>","children":null,"spread":false},{"title":"Scanner.cpp <span style='color:#111;'> 1.97KB </span>","children":null,"spread":false},{"title":"PL0.suo <span style='color:#111;'> 34.50KB </span>","children":null,"spread":false},{"title":"Debug","children":[{"title":"PL0.exe.intermediate.manifest <span style='color:#111;'> 621B </span>","children":null,"spread":false},{"title":"Scanner.obj <span style='color:#111;'> 40.57KB </span>","children":null,"spread":false},{"title":"PL0.exe <span style='color:#111;'> 160.50KB </span>","children":null,"spread":false},{"title":"IDKind.obj <span style='color:#111;'> 332.11KB </span>","children":null,"spread":false},{"title":"IDtable.obj <span style='color:#111;'> 61.42KB </span>","children":null,"spread":false},{"title":"PL0.exe.embed.manifest.res <span style='color:#111;'> 728B </span>","children":null,"spread":false},{"title":"Transalor.obj <span style='color:#111;'> 3.08KB </span>","children":null,"spread":false},{"title":"vc90.pdb <span style='color:#111;'> 628.00KB </span>","children":null,"spread":false},{"title":"Instruction.obj <span style='color:#111;'> 3.10KB </span>","children":null,"spread":false},{"title":"ID.obj <span style='color:#111;'> 24.19KB </span>","children":null,"spread":false},{"title":"Instructions.obj <span style='color:#111;'> 50.40KB </span>","children":null,"spread":false},{"title":"vc90.idb <span style='color:#111;'> 371.00KB </span>","children":null,"spread":false},{"title":"FirstSymbols.obj <span style='color:#111;'> 213.93KB </span>","children":null,"spread":false},{"title":"BuildLog.htm <span style='color:#111;'> 6.91KB </span>","children":null,"spread":false},{"title":"mt.dep <span style='color:#111;'> 69B </span>","children":null,"spread":false},{"title":"Parser.obj <span style='color:#111;'> 105.29KB </span>","children":null,"spread":false},{"title":"PL0.pdb <span style='color:#111;'> 1.75MB </span>","children":null,"spread":false},{"title":"main.obj <span style='color:#111;'> 46.20KB </span>","children":null,"spread":false},{"title":"PL0.exe.embed.manifest <span style='color:#111;'> 663B </span>","children":null,"spread":false},{"title":"OpKind.obj <span style='color:#111;'> 340.89KB </span>","children":null,"spread":false},{"title":"PL0.obj <span style='color:#111;'> 470.70KB </span>","children":null,"spread":false},{"title":"Token.obj <span style='color:#111;'> 29.52KB </span>","children":null,"spread":false},{"title":"PL0.ilk <span style='color:#111;'> 727.69KB </span>","children":null,"spread":false},{"title":"SymbolSeqs.obj <span style='color:#111;'> 151.47KB </span>","children":null,"spread":false},{"title":"TokenKind.obj <span style='color:#111;'> 3.08KB </span>","children":null,"spread":false}],"spread":false},{"title":"PL0.vcproj <span style='color:#111;'> 4.92KB </span>","children":null,"spread":false},{"title":"PL0.ncb <span style='color:#111;'> 1.98MB </span>","children":null,"spread":false},{"title":"ID.cpp <span style='color:#111;'> 176B </span>","children":null,"spread":false},{"title":"pl_05.txt <span style='color:#111;'> 61B </span>","children":null,"spread":false},{"title":"ID.h <span style='color:#111;'> 377B </span>","children":null,"spread":false},{"title":"pl_07.txt <span style='color:#111;'> 84B </span>","children":null,"spread":false},{"title":"IDKind.h <span style='color:#111;'> 345B </span>","children":null,"spread":false},{"title":"Parser.h <span style='color:#111;'> 1.80KB </span>","children":null,"spread":false},{"title":"pl_04.txt <span style='color:#111;'> 50B </span>","children":null,"spread":false},{"title":"OpKind.h <span style='color:#111;'> 514B </span>","children":null,"spread":false},{"title":"pl_10.txt <span style='color:#111;'> 152B </span>","children":null,"spread":false},{"title":"pl_09.txt <span style='color:#111;'> 110B </span>","children":null,"spread":false},{"title":"SymbolSeqs.h <span style='color:#111;'> 388B </span>","children":null,"spread":false},{"title":"PL0.sln <span style='color:#111;'> 871B </span>","children":null,"spread":false},{"title":"main.cpp <span style='color:#111;'> 720B </span>","children":null,"spread":false},{"title":"FirstSymbols.cpp <span style='color:#111;'> 2.18KB </span>","children":null,"spread":false},{"title":"PL0.vcproj.G41D3.Administrator.user <span style='color:#111;'> 1.37KB </span>","children":null,"spread":false},{"title":"PL0_EBNF.txt <span style='color:#111;'> 1017B </span>","children":null,"spread":false},{"title":"pl_06.txt <span style='color:#111;'> 73B </span>","children":null,"spread":false},{"title":"SymbolSeqs.cpp <span style='color:#111;'> 1.53KB </span>","children":null,"spread":false},{"title":"IDKind.cpp <span style='color:#111;'> 607B </span>","children":null,"spread":false},{"title":"pl_03.txt <span style='color:#111;'> 37B </span>","children":null,"spread":false},{"title":"sample_pl_code.txt <span style='color:#111;'> 148B </span>","children":null,"spread":false},{"title":"pl_01.txt <span style='color:#111;'> 14B </span>","children":null,"spread":false},{"title":"pl_02.txt <span style='color:#111;'> 22B </span>","children":null,"spread":false},{"title":"ClassDiagram1.cd <span style='color:#111;'> 1B </span>","children":null,"spread":false},{"title":"Scanner.h <span style='color:#111;'> 882B </span>","children":null,"spread":false},{"title":"pl_08.txt <span style='color:#111;'> 99B </span>","children":null,"spread":false},{"title":"Parser.cpp <span style='color:#111;'> 10.77KB </span>","children":null,"spread":false},{"title":"Token.cpp <span style='color:#111;'> 449B </span>","children":null,"spread":false},{"title":"pl_00.txt <span style='color:#111;'> 2B </span>","children":null,"spread":false}],"spread":false}],"spread":true}]

评论信息

  • 竹和蕉的缘分 :
    恩,学习了编译原理
    2014-12-11
  • 寒露知晓 :
    虽然不是我想要的,但是还勉强能用
    2013-06-28

免责申明

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