内容安排 :第 1 章的前半部分先讲解程序的运行时结构。如我们一再强调,运行时是程序执行的关键,编译器正是 将源代码转化为可执行程序并形成运行时结构的工具。对于只是想提高开发能力的程序员,这部分几乎起到了 90% 的作用。 第 1 章的后半部分对整体的编译过程做了一个综述。当读者对整体有概念的时候,再去看每个章节的具体 内容,会更容易理解。 第 2 章用一个简单案例讲解词法分析。词法分析是把源文件中的内容读出并识别出符号的过程。 第 3 章继续用词法分析时的简单案例讲解语法分析。语法分析是在词法分析的结果中识别出语句的过程。 第 4 章仍用前面的简单案例生成中间结构及目标代码。 第 5 章和第 6 章用几个更为复杂的案例来分析语法和生成中间结构及目标代码的过程。 至此,严格意义上的编译过程已经讲解完毕。为了让读者对最终生成的可执行程序有一个完整的了解,我 们专门安排了汇编器、链接器的内容,这就是第 7 章。 第 7 章详细讲解如何将目标代码转变为可执行程序,包括文件格式、汇编器和链接器的内容。 第 8 章讲预处理。从编译器的执行顺序来看,预处理器的执行是比较靠前的,之所以把预处理放在最后 讲,是因为预处理比较独立,在介绍完整个编译过程之后再讲解,读者更容易理解。