编译原理-复习随笔1-引论
学习的课本采用陈意云的《编译原理》(第三版),主要整理复习过程中的记录。由于有大量自己的理解,如果有错误可以提出来讨论更改。
编译器
通过翻译,生成目标程序。流程:字符流->词法分析->记号流->语法分析->语法树->语义分析->中间代码生成->代码优化->代码生成。进行一次。
解释器
直接执行源程序所指定的运算。包括词法分析、语法分析、语义分析。进行多次。
词法分析
也称线性分析、扫描。按词法规则组成词法记号。
记号流
<记号名,属性值>。符号表用来放各种属性。
语法分析
也称分析。检查是否符合语法规则。
语义分析
收集类型信息并保存在符号表。检查语义一致性。
中间代码生成
两个性质:易产生、易翻译。三地址代码。
代码生成
汇编语言代码生成伴随着符号管理。关键在于寄存器的分配。知晓MOVF、MULF、ADDF等。