编译原理第六章答案
第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 表:
1 / 9
编译原理第六章答案
表中无多重人口所以是算符优先(OPG)文法。
友情提示:记得增加拓广文法 S`→#S#,所以# FIRSTVT(S),LASTVT(S) #。 (3)对应的算符优先函数为:
Success!
对输入串(a,(a,a))# 的算符优先分析过程为:
2 / 9
编译原理第六章答案
Success! 第2 题
已知文法G[S]为: S→a|∧|(T) T→T,S|S
(1) 给出(a,(a,a))和(a,a)的最右推导,和规范归约过程。
(2) 将(1)和题1 中的(4)进行比较给出算符优先归约和规范归约的区别。 答案:
3 / 9
编译原理第六章答案
4 / 9
编译原理第六章答案
(2)算符优先文法在归约过程中只考虑终结符之间的优先关系从而确定可归约串,而与 非终结符无关,只需知道把当前可归约串归约为某一个非终结符,不必知道该非终结符的名 字是什么,因此去掉了单非终结符的归约。
规范归约的可归约串是句柄,并且必须准确写出可归约串归约为哪个非终结符。
5 / 9
编译原理第六章答案
编译原理第六章答案第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)#和
推荐度:
点击下载文档文档为doc格式