程序员的自我修养总结(二)
声明:引用请注明出处http://blog.csdn.net/lg1259156776/
说明:这是程序员的自我修养一书的读书总结,随着阅读的推进,逐步增加内容。
由源文件到可执行文件
分为四个步骤:
预处理
处理源代码中以#开始的预编译指令,进行宏定义展开,处理所有条件预编译指令,将被包含文件插入到预编译指令的位置,删除所有注释,添加行号及文件标识,保留#pragma编译器指令,因为编译器需用到。
编译
进行一系列词法分析,语法分析,语义分析及优化后生成汇编代码文件。
汇编
将汇编代码转变为机器可执行的指令,生成的是目标文件
链接
将目标文件以及所包含的库文件等链接到一起生成最终的可执行文件。
编译器的具体工作
从源代码开始,输入到扫描器(scanner)中,进行词法分析(运用类似有限状态