编译课程复习 许畅 南京大学计算机系 2022年春季 版权所有南京大学计算机科学与技术系许畅2022春季版
许畅 南京大学计算机系 2022年春季 编译课程复习 版权所有 南京大学计算机科学与技术系 许畅 2022春季版 南大编译许畅
引论(1) 源程序 编译器 目标程序 2
源程序 编译器 目标程序 引论 (1) 2 南大编译许畅
字符流 引论(2) 词法分析器 符号流 语法分析 语法树 语义分析 语法树 符号表 中间代码生成器 中间表示形式 机器无关代码优化器 中间表示形式 代码生成器 目标机器语言 机器相关代码优化器 目标机器语言 3
引论 (2) 3 南大编译许畅
词法分析 功能和作用 相关概念:字母表、串、语言等 正则表达式 。状态转换图 有穷自动机:确定(DFA)VS.不确定(NFA) NFA和DFA识别串的模拟 正则表达式→NFA)DFA DFA状态最小化
词法分析 • 功能和作用 • 相关概念:字母表、串、语言等 • 正则表达式 • 状态转换图 • 有穷自动机: 确定 (DFA) vs. 不确定 (NFA) • NFA和DFA识别串的模拟 • 正则表达式 ➔ NFA ➔ DFA • DFA状态最小化 4 南大编译许畅
语法分析(1) 功能和作用 。 相关概念:文法(上下文无关文法)、推导(最左和 最右)、语法分析树等 二义性、左递归及其消除 自顶向下分析技术 递归下降 预测分析 FIRST和FOLLOW 预测分析表、分析流程 LL(1)文法 5
语法分析 (1) • 功能和作用 • 相关概念:文法 (上下文无关文法)、推导 (最左和 最右)、语法分析树等 • 二义性、左递归及其消除 • 自顶向下分析技术 – 递归下降 – 预测分析 • FIRST和FOLLOW • 预测分析表、分析流程 • LL(1)文法 5 南大编译许畅