/cs143

Primary LanguageC++

编译器项目

完成斯坦福cs143的课程,并从头开始实现了一个编译器,通过全部附带测试,包括一下五个实验:

  1. 熟悉Cool语言,支持循环、分支、函数调用、多态等特性。
  2. 词法分析,书写正则表达式,利用flex生成自动机。
  3. 语法分析,书写上下文无关文法,利用bison生成AST。
  4. 语义分析,在AST上进行类型检查。
  5. 代码生成,利用AST生成MIPS汇编代码。采用了stack machine的方式。

编程语言CPP。