各个编程语言编译器源码收集
我们到了简单编译器开发的最后一个阶段,也就是生成中间代码。以前我们提到过编译器分为两部分,分别为前端和后端,所谓前端就是将代码转译成中间语言,后端负责进行优化和转译成目标平台的机器指令,现在我们来到了前端的最后一个阶段。由于中间代码生成是当前所有阶段中逻辑最为复杂的部分,因此我们需要将其分解成多个容易理解的小部分,逐个击破。我们的计划是这样,首先完成比较简单的代码的中间代码生成,然后不断的提升目标代码的复杂度,然后生成更加复杂的中间代码。
本节我们要完成的如下目标代码的中间代码生成:
{
int a;
in