精品文档
第6 章 自底向上优先分析
第1 题
已知文法G[S]为: S→a|∧|(T) T→T,S|S
(1) 计算G[S]的FIRSTVT 和LASTVT。
(2) 构造G[S]的算符优先关系表并说明G[S]是否为算符优先文法。 (3) 计算G[S]的优先函数。
(4) 给出输入串(a,a)#和(a,(a,a))#的算符优先分析过程。 答案:
文法展开为: S→a S→∧ S→(T) T→T,S T→S
(1) FIRSTVT - LASTVT 表:
精品文档
精品文档
表中无多重人口所以是算符优先(OPG)文法。
友情提示:记得增加拓广文法 S`→#S#,所以# FIRSTVT(S),LASTVT(S) #。 (3)对应的算符优先函数为:
Success!
对输入串(a,(a,a))# 的算符优先分析过程为:
精品文档
精品文档
Success! 第2 题
已知文法G[S]为: S→a|∧|(T) T→T,S|S
(1) 给出(a,(a,a))和(a,a)的最右推导,和规范归约过程。
(2) 将(1)和题1 中的(4)进行比较给出算符优先归约和规范归约的区别。 答案:
精品文档