项目简介
本项目是一个基于编译器技术的Tiger编译器,可实现功能完善的Tiger语言编译工作。项目覆盖词法分析、语法分析、语义分析以及代码生成等阶段,有助于开发者深入理解编译器的工作原理与实现过程。
项目的主要特性和功能
- 词法分析:把输入的Tiger源代码拆分为一系列记号。
- 语法分析:按照Tiger语言的语法规则,将记号流转化为抽象语法树。
- 语义分析:对抽象语法树进行语义分析,确保代码语义无误并完成类型检查。
- 代码生成:将抽象语法树转换为可执行的目标代码。
- 错误处理:处理编译过程中的错误,提供清晰的错误信息以辅助定位和解决问题。
- 可视化工具:支持将抽象语法树以DOT格式输出,方便理解和调试编译器工作流程。
安装使用步骤
- 确保已下载项目的源码文件。
- 在Ubuntu 22.04系统下,打开命令行,输入
make
命令,在build
目录下生成Tiger编译器。 - 运行Tiger编译器,若语法分析成功,当前目录下会生成名为
tree.dot
的文件,此文件是抽象语法树的可视化表示。 - 执行命令
dot -Tpng tree.dot -o tree.png
生成可视化的中间代码树。 - 使用
make test
命令生成所有的测试解析树。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】