/complier_front_end

一个类C语言的简单编译器前端

Primary LanguageC++

front_end

一个类 C 语言的简单编译器前端

基于状态机的词法分析器,分析源代码得到词法单元序列, 对词法单元序列进行LL语法分析(递归下降),语法分析过程中进行语义分析和AST(抽象语法树)构造,通过AST 生成中间代码(接近汇编代码)

支持的语法 算术运算符 + - * / 关系运算符 < <= > >= == != 逻辑运算符 || && ! 赋值运算符 = if 语句 if else 语句 while 语句 do while 语句 break 语句 int 类型 float 类型 bool 类型 数组类型

用 LL 分析方法,在语法分析过程中构造 AST ,如果语法分析成功,则运行 AST 生成中间代码 本程序参考龙书的编译器前端源码编写