原文在此。 ————翻译分隔线———— 编译器(10)-编译到 C 第一部分:介绍 第二部分:编译、转译和解释 第三部分:编译器设计概览 第四部分:语言设计概述 第五部分:Calc 1 语言规格说明书 第六部分:标识符 第七部分:扫描 第八部分:抽象语法树 第九部分:解析 终于到最后一个步骤了! 我们的语言规格说明书如此简单,其实可以跳过 C 直接输出汇编。我有两个不这么做的原因。首先,移植性。在这个指引中,我无须编写任何特定架构的 C 代码。C 已经被移植到各种不同的系统中去了,因此可以让 C 编译器为我们做这个工作。 其次,对于许多程序员来说,汇编比起 C 来说要陌生得多。即使你从未使用 C 编写任何东西,它也比汇编要容易理解得多。