编译原理还是难顶,为了避免老师问到一问三不知,还是再回顾一下基本的概念吧。。。毕竟大三学过。。
话不多说,最重要的概念当然是编译器的几个阶段了。。。
1.编译器各阶段的工作
- 词法分析:输入是源程序,输出是记号流,目的是识别单词(关键字,标识符,字面量,特殊字符)
- 语法分析:输入是记号流,输出是语法树,目的是得到语言结构并以树的形式表示
- 语义分析:根据语义规则对语法树中的语法单元进行静态语义检查,如类型检查和转换等
- 中间代码的生成:生成一种既接近目标语言,又与具体机器无关的表示,便于代码优化与代码生成.
- 代码优化:局部优化、循环优化、全局优化等;优化实际上是一个等价变换,变换前后的指令序列完成同样的功能,但在占用的空间上和程序执行的时间上都更省、更有效
- 目标代码的生成:不同形式的目标代码—汇编语言形式、可重定位二进制代码形式、内存形式
。。。。
下面就不说了,我就准备这么多,老师在问我也不懂了,除非老师故意刁难我,,,这下面谁定的住啊,我去看408了。。。。