编译原理(陈火旺第三版)练习答案(14)

发布时间:2021-06-07

编译原理(陈火旺第三版)练习答案

#(S,(S,a #(S,(S,S #(S,(T #(S,(T) #(S,S #(T #(T) #S

P134-5 (1)

))# ))# ))# )# )# )# # #

移进 归约 归约 移进 归约 归约 移进 归约

考察I1、I6、I7:

I1:存在移进-归约冲突,因为Follow(S’)={#},不包含a或b,因此冲突可以使用SLR解决方法解决。

I6:存在移进-归约冲突,因为Follow(A)={a,b},因此无法使用SLR方法解决移进-归约冲突

I7:存在移进-归约冲突,因为Follow(S)={#,a,b},因此无法解决移进-归约冲突 所以不是SLR(1)文法。

构造LR(1)项目集规范族:

编译原理(陈火旺第三版)练习答案

本文档由计算机吧【www.jsj8.com】搜集,版权归原作者,不得用于商业活动!

更多计算机考研资料请大家到:www.jsj8.com下载!

检查I5,[A→SA.,a/b],要求输入为a或者b使用A→SA归约,而[S→.b,a/b]及[A→.a,a/b]要求移进,因此存在移进-归约冲突,所以不是LR(1)文法。 P135-8 解答:

不存在左递归;

因为Fist(AaAb)={a},First(BbBa)={b}所以交集为空 所以该文法是LL(1)文法。

I0={S→.AaAb,S→.BbBa,A→.,B→.} I1=GO(I0,A)={ S→A.aAb } I2=GO(I0,B)={ S→B.bBa } I3=GO(I1,a)={ S→Aa.Ab,A→.} I4=GO(I2,b)={ S→Bb.Ba,B→.} I5=GO(I3,A)={ S→AaA.b } I6=GO(I4,B)={ S→BbB.a } I7=GO(I5,b)={ S→AaAb.} I8=GO(I6,a)= { S→BbBa.}

考虑:I0:存在两个归约项目,A→.,B→.,Follow(A)={a,b},Follow(B)={a,b},所以冲突不能解决,不是SLR(1)文法。

编译原理(陈火旺第三版)练习答案(14).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219