编译原理学习笔记12——语法分析|自下而上分析3
12.1 活前缀
LR分析法
工作框架
规范规约
LR分析法
答案:D
字的 前缀、活前缀
识别活前缀
12.2 构造识别活前缀的DFA
文法的拓广
LR(0)项目
示例:LR(0)项目
构造识别文法所有活前缀的DFA
构造识别文法所有活前缀的DFA
识别活前缀的NFA
LR(0)项目集规范族
通过计算项目集规范族构造识别活前缀的DFA
有效项目
有效项目的性质
LR(0)项目集规范族的构造
项目集的闭包CLOSURE
状态转换函数
示例:项目集的转移函数计算
LR(0)项目集规范族的构造算法
12.3 构造LR(0)分析表
LR(0)分析表的构造
构造LR(0)分析表的算法
LR(0)分析表的ACTION和GOTO子表构造
示例:LR(0)分析表的构造
LR(0)分析示例
小结
- 规范归约过程中,只要保证分析栈中总是活前 缀,就说明分析采取的移进/归约动作是正确的
- 哪些字符串是活前缀?能不能构造一个DFA来识 别活前缀?
- 项目 ->NFA ->DFA
- Closure->GO->DFA
- 将识别活前缀的DFA转换成LR分析表