编译原理复习1
2017-11-19 20:22
190 查看
编译程序工作的六个阶段
词法分析语法分析
语义分析
中间代码生成
优化
目标代码生成
编译前端与后端
编译前端与源语言有关,如词法分析,语法分析,语义分析与中间代码生成,与机器无关的优化
编译后端
与目标机有关,与目标机有关的优化有关,目标代码产生
带来的好处:
程序逻辑结构清晰
优化更充分,有利于移植
自编译
这里补充一下自编译。例如想要编译某种语言L,我们就可以将L分成若干个子集,便有L = L0 + L1 + …… + Ln。其中L0是最核心的部分,那么L0是由汇编写出来的,然后L1由L0写出来,L2由(L0+L1)写出来,……Ln由(L0+L1+……+Ln-1)写出来。那么就有L的自编译了。参见参考文章