第二章
- 最右推导叫做【规范推导】,因此作为其逆过程的最左规约
简单短语 句柄
消除左递归
- 算法 2.6
- 扩充的 BNF 表示法
- 例
文法的二义性
- 语法树(*)
推出来句型是一样的,但是语法树是不一样的 - 推导
- 规约
- 例
已知语言写出文法
- 例
正则文法
题库
第三章
基础知识
DFA
- DFA
- 状态转换图构造 DFA
NFA
- NFA
- 例
算法3.1 正则文法构造状态转换图算法
RE -> NFA(应用状态转换图为正则语言构造正则文法)
- 概念
- 例
NFA -> DFA
-
定理 3
-
例
-
S` 初始状态
-
K`是所有整出来的,S是最开始的,F 是含有终止 S2 的
DFA 化简
- 等价状态
- 死状态和无用状态
- 合并等价状态,删除无关状态
- 首先分为非终止状态和终止状态的集合
- 之后合并等价状态,就是输出相同边可以得到相同的结果
第五章
求 First 集、 Follow 集、Select 集
- First 集
- Follow 集
如果B后有东西,就把B后的first集加入集合,如果B后没东西,就把A的follow集加入集合
- 综合求 first 集和 follow 集
S在左边是开始符号,直接将 # 加入(第一条规则);看右边哪里有 S,将 P first 集中去除 e 加入(第二条规则)
O 使用第三条规则,将 first(S) 加入 O 中
- 例
- select 集
() 里的就是题目中的条件
LL(1) 分析方法
- 判断是否是 LL(1) 文法
- 例
- 分析表构造
- 分析字符串
- 试题
第六章
简单优先分析算法
- 概念
- 例
- 例
- 例
句柄就是有小于关系的那一对和他们之间的,把句柄进行规约,按照文法,使得左边全是小于等于的
- 试题
算符优先分析算法
- 逆波兰优先级
LR(K) 分析方法
第七章
抽象语法树
逆波兰式
三元式、四元式
- 四元式
- 三元式
- 优化技术
合并常量运算、消减运算强度、删除无用表达式、合并公共子表达式、外提不变表达式