编译原理第七章习题参考答案

上传人:m**** 文档编号:488053837 上传时间:2023-06-25 格式:DOC 页数:7 大小:101.50KB
返回 下载 相关 举报
编译原理第七章习题参考答案_第1页
第1页 / 共7页
编译原理第七章习题参考答案_第2页
第2页 / 共7页
编译原理第七章习题参考答案_第3页
第3页 / 共7页
编译原理第七章习题参考答案_第4页
第4页 / 共7页
编译原理第七章习题参考答案_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《编译原理第七章习题参考答案》由会员分享,可在线阅读,更多相关《编译原理第七章习题参考答案(7页珍藏版)》请在金锄头文库上搜索。

1、.第1 题已知文法AaAd|aAb|判断该文法是否是SLR(1)文法,若是构造相应分析表,并对输入串ab#给出分析过程。答案:文法:AaAd|aAb|拓广文法为G,增加产生式SA若产生式排序为:0 S A1 A aAd2 A aAb3 A 由产生式知:First (S ) = ,aFirst (A ) = ,aFollow(S ) = #Follow(A ) = d,b,#G的LR(0)项目集族及识别活前缀的DFA 如下图所示在I0 中:A .aAd 和A .aAb 为移进项目,A .为归约项目,存在移进-归约冲突,因此所给文法不是LR(0)文法。在I0、I2 中:Follow(A) a= d

2、,b,# a=f精品.所以在I0、I2 中的移进-归约冲突可以由Follow 集解决,所以G 是SLR(1)文法。构造的SLR(1)分析表如下:对输入串ab#的分析过程:第2 题若有定义二进制数的文法如下:SLL|LLLB|BB0|1(1) 试为该文法构造LR 分析表,并说明属哪类LR 分析表。(2) 给出输入串101.110 的分析过程。答案:精品.文法:SL.L|LLLB|BB0|1拓广文法为G,增加产生式SS若产生式排序为:0 S S1 S L.L2 S L3 L LB4 L B5 B 06 B 1由产生式知:First (S ) = 0,1First (S ) = 0,1First (

3、L ) = 0,1First (B ) = 0,1Follow(S ) = #Follow(S ) = #Follow(L ) = .,0,1,#Follow(B ) = .,0,1,#G的LR(0)项目集族及识别活前缀的DFA 如下图所示:在I2 中:B .0 和 B .1 为移进项目,S L.为归约项目,存在移进-归约冲突,因此所给文法不是LR(0)文法。在I2、I8 中:Follow(s) 0,1= # 0,1=所以在I2 、I8 中的移进-归约冲突可以由Follow 集解决,所以G 是SLR(1)文法。构造的SLR(1)分析表如下:精品.对输入串101.110#的分析过:精品.第6 题

4、文法G=(U,T,S,a,b,c,d,e,P,S)其中P 为:SUTa|TbTS|Sc|dUUS|e(1) 判断G 是LR(0),SLR(1),LALR(1)还是LR(1),说明理由。(2) 构造相应的分析表。答案:文法:SUTa|TbTS|Sc|dUUS|e拓广文法为G,增加产生式SS若产生式排序为:0 S S1 S UTa2 S Tb3 T S4 T Sc5 T d6 U US7 U e由产生式知:精品.First (S ) = d,eFirst (S ) = d,eFirst (U ) = eFirst (T ) = d,eFollow(S ) = #Follow(S ) = a,b,c

5、,d,e,#Follow(U ) = d,eFollow(T ) = a,bG的LR(0)项目集族及识别活前缀的DFA 如下图所示:在I1 中:S S.为接受项目,T S. 为归约项目,T S.c 为移进项目,存在接受-归约和移进-归约冲突,因此所给文法不是LR(0)文法。在I1 中:Follow(S) Follow(T)= # a ,b=fFollow(T) c= a ,b c=f在I8 中:Follow(U) Follow(T) c=d,e a ,b c=f所以在I1 中的接受-归约和移进-归约冲突与I8 中的移进-归约和归约-归约冲突可以由Follow 集解决,所以G 是SLR(1)文法。构造的SLR(1)分析表如下:精品.如有侵权请联系告知删除,感谢你们的配合!精品

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号