Skip to content

WACC语言编译器

大二编译器小组项目,使用Java编写。实现了一个支持输出 ARM11 指令集汇编代码的WACC语言编译器。它包括前端的词法分析器 (Language Lexer)、语法解析器 (Language Parser) 和语义分析器 (Semantic Analyser),以及后端的代码生成器 (Code Generator)。利用 ANTLR 工具生成的语言解析器 (Language Parser),实现语法树 (Syntax Tree) 的生成,其中包括对 WACC 语法和语义的解析,并生成相关错误报告。该编译器支持解析基本逻辑语句,包括 if-else 语句,for/while 语句,switch 语句以及 break/continue 语句。支持 pair 类型和 macros。