来源:mikespook
英文原文:http://noeffclue.blogspot.com/2014/05/compiler-part-10-compiling-to-c.html
项目地址:https://github.com/rthornton128/calc
编译器流程(一般分析部分属于编译前端,优化和编码部分属于编译后端):
词法分析—(识别标识符:文法、关键字、操作符)—>语法分析—(合规表达式)—>语义分析—(类型、参数、作用域等中间代码)—>优化—(等价替换)—>编码—(低级代码)