编译-印象中的编译原理

 
一.概述
 
编译,即是把源代码转换翻译成可执行代码的过程。即是把人可以阅读的高级语言代码,转换为计算机即CPU可执行的编码的过程。比如把C语言编译为一条条汇编指令组成的可执行格式,如elf或exe.
 
严谨的理论可以参考龙书、虎书等,这里记录一点印象中的理解。
 
二. 基本过程
 

1. 词法分析:检查错别字,即形式上的错误;

2. 语法分析:检查语法错误,不及物动词有没有加介词之类的。生成语法树;

3. 中间代码生成:基于语法树生成中间形式的代码,中间代码更接近于目标代码,转换较为容易;

4. 代码优化:一些无意义或者没必要的代码可以被优化掉,一些代码可以调整为更高效率的顺序;

5. 目标代码生成:生成最终的目标代码,即机器码;

 
中间代码之上为编译器前端的职责范围,中间代码之下为编译器后端的职责范围。
 
 
posted @ 2018-07-14 22:29  wjcdx  阅读(225)  评论(0编辑  收藏  举报