Compiler:一个简化的解释器、编译器和调试器-源码

上传者: 42104947 | 上传时间: 2021-06-03 18:06:13 | 文件大小: 119KB | 文件类型: ZIP
Java 子集的编译器 CSC 413 的最终项目:软件开发。 从 Java 子集的字节码设计的解释器和调试器 使用说明 要从命令行运行项目,请键入以下内容: java -jar "Interpreter.jar" 运行解释器和 java -jar "Interpreter.jar" -d 运行调试器 调试器命令 [break] 设置/清除断点[fct] 显示当前函数[cont] 继续执行[var] 显示变量[stpout] 跳出当前激活的函数[stpovr] 越过一行[stpin] 进入一个函数[list] 列出断点[call] 打印调用堆栈[trace] 设置函数跟踪[src] 显示源代码(带断点) [q] 退出

文件下载

资源详情

[{"title":"( 87 个子文件 119KB ) Compiler:一个简化的解释器、编译器和调试器-源码","children":[{"title":"Compiler-master","children":[{"title":"fib.x.cod <span style='color:#111;'> 731B </span>","children":null,"spread":false},{"title":"Interpreter.jar <span style='color:#111;'> 163.83KB </span>","children":null,"spread":false},{"title":"src","children":[{"title":"ast","children":[{"title":"FormalsTree.java <span style='color:#111;'> 199B </span>","children":null,"spread":false},{"title":"CallTree.java <span style='color:#111;'> 190B </span>","children":null,"spread":false},{"title":"IfTree.java <span style='color:#111;'> 184B </span>","children":null,"spread":false},{"title":"FloatTree.java <span style='color:#111;'> 622B </span>","children":null,"spread":false},{"title":"WhileTree.java <span style='color:#111;'> 192B </span>","children":null,"spread":false},{"title":"BlockTree.java <span style='color:#111;'> 193B </span>","children":null,"spread":false},{"title":"RelOpTree.java <span style='color:#111;'> 462B </span>","children":null,"spread":false},{"title":"RepeatTree.java <span style='color:#111;'> 194B </span>","children":null,"spread":false},{"title":"DeclTree.java <span style='color:#111;'> 190B </span>","children":null,"spread":false},{"title":"ProgramTree.java <span style='color:#111;'> 199B </span>","children":null,"spread":false},{"title":"AST.java <span style='color:#111;'> 1.93KB </span>","children":null,"spread":false},{"title":"FloatTypeTree.java <span style='color:#111;'> 205B </span>","children":null,"spread":false},{"title":"IntTree.java <span style='color:#111;'> 622B </span>","children":null,"spread":false},{"title":"AddOpTree.java <span style='color:#111;'> 370B </span>","children":null,"spread":false},{"title":"FunctionDeclTree.java <span style='color:#111;'> 214B </span>","children":null,"spread":false},{"title":"IdTree.java <span style='color:#111;'> 793B </span>","children":null,"spread":false},{"title":"IntTypeTree.java <span style='color:#111;'> 199B </span>","children":null,"spread":false},{"title":"ReturnTree.java <span style='color:#111;'> 196B </span>","children":null,"spread":false},{"title":"AssignTree.java <span style='color:#111;'> 196B </span>","children":null,"spread":false},{"title":"MultOpTree.java <span style='color:#111;'> 464B </span>","children":null,"spread":false},{"title":"ActualArgsTree.java <span style='color:#111;'> 208B </span>","children":null,"spread":false},{"title":"BoolTypeTree.java <span style='color:#111;'> 202B </span>","children":null,"spread":false}],"spread":false},{"title":"visitor","children":[{"title":"PrintVisitor.java <span style='color:#111;'> 3.45KB </span>","children":null,"spread":false},{"title":"ASTVisitor.java <span style='color:#111;'> 1.73KB </span>","children":null,"spread":false}],"spread":true},{"title":"constrain","children":[{"title":"Constrainer.java <span style='color:#111;'> 11.84KB </span>","children":null,"spread":false},{"title":"Table.java <span style='color:#111;'> 3.98KB </span>","children":null,"spread":false}],"spread":true},{"title":"interpreter","children":[{"title":"Interpreter.java <span style='color:#111;'> 1.83KB </span>","children":null,"spread":false},{"title":"RunTimeStack.java <span style='color:#111;'> 2.58KB </span>","children":null,"spread":false},{"title":"ByteCodeLoader.java <span style='color:#111;'> 1.43KB </span>","children":null,"spread":false},{"title":"Program.java <span style='color:#111;'> 2.07KB </span>","children":null,"spread":false},{"title":"VirtualMachine.java <span style='color:#111;'> 2.57KB </span>","children":null,"spread":false},{"title":"debugger","children":[{"title":"ui","children":[{"title":"Trace.java <span style='color:#111;'> 413B </span>","children":null,"spread":false},{"title":"StepOver.java <span style='color:#111;'> 385B </span>","children":null,"spread":false},{"title":"UI.java <span style='color:#111;'> 9.03KB </span>","children":null,"spread":false},{"title":"StepOut.java <span style='color:#111;'> 560B </span>","children":null,"spread":false},{"title":"StepIn.java <span style='color:#111;'> 375B </span>","children":null,"spread":false}],"spread":true},{"title":"DebuggerVM.java <span style='color:#111;'> 5.51KB </span>","children":null,"spread":false},{"title":"FunctionEnvironmentRecord.java <span style='color:#111;'> 6.77KB </span>","children":null,"spread":false},{"title":"Debugger.java <span style='color:#111;'> 1.33KB </span>","children":null,"spread":false},{"title":"SourceLines.java <span style='color:#111;'> 634B </span>","children":null,"spread":false}],"spread":true},{"title":"CodeTable.java <span style='color:#111;'> 1.39KB </span>","children":null,"spread":false},{"title":"bytecodes","children":[{"title":"GoToCode.java <span style='color:#111;'> 945B </span>","children":null,"spread":false},{"title":"FalseBranchCode.java <span style='color:#111;'> 1.00KB </span>","children":null,"spread":false},{"title":"LabelCode.java <span style='color:#111;'> 625B </span>","children":null,"spread":false},{"title":"HaltCode.java <span style='color:#111;'> 512B </span>","children":null,"spread":false},{"title":"ReadCode.java <span style='color:#111;'> 647B </span>","children":null,"spread":false},{"title":"StoreCode.java <span style='color:#111;'> 768B </span>","children":null,"spread":false},{"title":"CallCode.java <span style='color:#111;'> 982B </span>","children":null,"spread":false},{"title":"LoadCode.java <span style='color:#111;'> 762B </span>","children":null,"spread":false},{"title":"BopCode.java <span style='color:#111;'> 3.29KB </span>","children":null,"spread":false},{"title":"ArgsCode.java <span style='color:#111;'> 583B </span>","children":null,"spread":false},{"title":"PopCode.java <span style='color:#111;'> 681B </span>","children":null,"spread":false},{"title":"DumpCode.java <span style='color:#111;'> 753B </span>","children":null,"spread":false},{"title":"ByteCode.java <span style='color:#111;'> 352B </span>","children":null,"spread":false},{"title":"ReturnCode.java <span style='color:#111;'> 721B </span>","children":null,"spread":false},{"title":"debuggerBytecodes","children":[{"title":"debugLitCode.java <span style='color:#111;'> 711B </span>","children":null,"spread":false},{"title":"debugCallCode.java <span style='color:#111;'> 663B </span>","children":null,"spread":false},{"title":"FormalCode.java <span style='color:#111;'> 887B </span>","children":null,"spread":false},{"title":"FunctionCode.java <span style='color:#111;'> 2.42KB </span>","children":null,"spread":false},{"title":"LineCode.java <span style='color:#111;'> 1.53KB </span>","children":null,"spread":false},{"title":"debugReturnCode.java <span style='color:#111;'> 1.34KB </span>","children":null,"spread":false},{"title":"debugPopCode.java <span style='color:#111;'> 573B </span>","children":null,"spread":false}],"spread":false},{"title":"WriteCode.java <span style='color:#111;'> 540B </span>","children":null,"spread":false},{"title":"LitCode.java <span style='color:#111;'> 802B </span>","children":null,"spread":false}],"spread":false}],"spread":true},{"title":"lexer","children":[{"title":"Tokens.java <span style='color:#111;'> 406B </span>","children":null,"spread":false},{"title":"SourceReader.java <span style='color:#111;'> 3.03KB </span>","children":null,"spread":false},{"title":"Lexer.java <span style='color:#111;'> 9.11KB </span>","children":null,"spread":false},{"title":"Token.java <span style='color:#111;'> 1.47KB </span>","children":null,"spread":false},{"title":"setup","children":[{"title":"TokenSetup.java <span style='color:#111;'> 3.67KB </span>","children":null,"spread":false},{"title":"tokens <span style='color:#111;'> 341B </span>","children":null,"spread":false}],"spread":true},{"title":"TokenType.java <span style='color:#111;'> 2.45KB </span>","children":null,"spread":false},{"title":"Symbol.java <span style='color:#111;'> 1.22KB </span>","children":null,"spread":false}],"spread":true},{"title":"codegen","children":[{"title":"Codegen.java <span style='color:#111;'> 15.41KB </span>","children":null,"spread":false},{"title":"NumOpcode.java <span style='color:#111;'> 466B </span>","children":null,"spread":false},{"title":"Program.java <span style='color:#111;'> 958B </span>","children":null,"spread":false},{"title":"Code.java <span style='color:#111;'> 424B </span>","children":null,"spread":false},{"title":"VarOpcode.java <span style='color:#111;'> 747B </span>","children":null,"spread":false},{"title":"LabelOpcode.java <span style='color:#111;'> 576B </span>","children":null,"spread":false},{"title":"Codes.java <span style='color:#111;'> 2.73KB </span>","children":null,"spread":false}],"spread":true},{"title":"compiler","children":[{"title":"Compiler.java <span style='color:#111;'> 2.23KB </span>","children":null,"spread":false}],"spread":true},{"title":"parser","children":[{"title":"Parser.java <span style='color:#111;'> 12.28KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":".gitignore <span style='color:#111;'> 2.58KB </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 838B </span>","children":null,"spread":false},{"title":"fib.x <span style='color:#111;'> 324B </span>","children":null,"spread":false},{"title":".gitattributes <span style='color:#111;'> 483B </span>","children":null,"spread":false}],"spread":true}],"spread":true}]

评论信息

免责申明

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