云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 编译原理重点题型简答综合选择填空

编译原理重点题型简答综合选择填空

  • 62 次阅读
  • 3 次下载
  • 2025/5/3 8:04:43

? 构造下面文法的LL(1)分析表 S→aBc|bAB A→aAb|b B→b|ε

构造其LL(1)分析表,并分析符号串baabbb是否是该文法的句子 答:FIRST(S)={a,b} FIRST(A)={a,b} FIRST(B)={b,ε} FOLLOW(S)={#} FOLLOW(A)={b,#} FOLLOW(B)={c,#} LL(1)分析表:

分析符号串baabbb的过程:

? 设有文法G[S]:S→CC (1) C→cC (2) C→d (3) 求:1)拓广文法

2)文法的LR(1)项目集规范族(识别活前缀的DFA) 3)构造规范LR分析表

4)给出句子cdd的LR(1)分析过程 1)拓广文法

S’→S(0) S→CC(1) C→cC(2) C→d(3)

2)LR(1)项目集规范族

I0={[S’→?S,#],[S→?CC,#],[C→?cC,c/d],[C→?d,c/d]} I1=GO(I0,S)={[S’→S?,#]}

I2=GO(I0,C)={[S→C?C,#],[C→?cC,#],[C→?d,#]}

I3=GO(I0,c)=GO(I3,c)={[C→c?C,c/d],[C→?cC,c/d],[C→?d,c/d]} I4=GO(I0,d)=GO(I3,d)={[C→d?,c/d]} I5=GO(I2,C)={[S→CC?,#]}

I6=GO(I2,c)=GO(I6,c)={[C→c?C,#],[C→?cC,#],[C→?d,#]} I7=GO(I2,d)=GO(I6,d)={[C→d?,#]} I8=GO(I3,C)={[C→cC?,c/d]} I9=GO(I6,C)={[C→cC?,#]}

14、给出下述文法对应的正规式: S→0A|1B A→1S|1 B→0S|0

分析与解析:将A,B产生式的右部代入S中 01S|01|10S|10=(01|10)S|(01|10) 所以,(01|10)*(01|10)

15、已知文法G[A]:A→B|AaB|AbB B→C|BcC|BdC C→fAg|e

给出符号串eceae的最右推导、语法树

16、设有文法G[S]=({S,A,B},{a,b},P,S),其中P为: S→AB A→Aa|bB B→a|Sb

求句型baSb的全部短语、直接(简单)短语和句柄。

短语有:ba,Sb,a,baSb直接短语:a,Sb句柄:a

17、设有文法G[E]:E→EE+

E→EE*

E→a (1) 构造该文法的LR(0)项目集规范族

(2) 该文法的LR(1)文法吗,请说明理由?若是请构造它的LR(1)分析表 解答:首先拓广文法如下: S→E E→EE+

E→EE* E→a

(1)构造该文法的LR(0)项目集规范族:

I0=CLOSOURE({S→·E})={ S→·E,E→·EE+,

E→·EE*,E→·a } I1=GO(I0,E)= { S→E·,E→E·E+,E→E·E*,E→·EE+, E→·EE*,E→·a } I2=GO(I0,a)=GO(I1,a)= { E→a· }

I3=GO(I1,E)=GO(I3,E)= { E→EE·+,E→EE·*,E→E·E+,E→E·E*,E→·EE+,E→·EE*,E→·a }

I4=GO(I3,+)= { E→EE+·} I5=GO(I3,*)= { E→EE*· } (2)该文法是LR(1)文法,因为:

在LR(0)项目集规范族的每个项目子集中,都不存在移进-归约冲突和归约-归约冲突,所以该文法是LR(0)文法,自然也是SLR(1)文法和LR(1)文法,现构造LR(1)项目集族如下: I0=CLOSURE({[S→·E,#]})={ [S→·E,#],[E→·EE+,#/a],

[E→·EE*,#/a],[E→·a,#/a] } I1=GO(I0,E)= { [S→E·,#],[E→E·E+,#/a],[E→E·E*,#/a],

[E→·EE+,+/*/a],[E→·EE*,+/*/a],[E→·a,+/*/a] } I2=GO(I0,a)= { [E→a·,#/a] }

I3=GO(I1,E)= { [E→EE·+,#/a],[E→EE·*,#/a],

[E→E·E+,+/*/a], [E→E·E*,+/*/a],E→·EE+,+/*/a], [E→·EE*,+/*/a], [E→·a ,+/*/a] } I4=GO(I1,a)=GO(I3,a)=GO(I7,a)={ [E→a·,+/*/a]} I5=GO(I3,+)= { [E→EE+·,#/a] } I6=GO(I3,*)= { [E→EE*·,#/a] }

I7=GO(I3,E)=GO(I7,E)={ [E→EE·+,+/*/a],[E→EE·*,+/*/a],

[E→E·E+,+/*/a], [E→E·E*,+/*/a], [E→·EE+,+/*/a], [E→·EE*,+/*/a], [E→·a ,+/*/a] } I8=GO(I7,+)= { [E→EE+·,+/*/a] } I9=GO(I7,*)= { [E→EE*·,+/*/a] }

18、假设有以下算符优先文法:G[A]: A→A;D|D D→D(E)|F F→a|(A) E→E+A|A

(1)给出该文法的算符优先关系表。(2)写出句子(a+a)的算符优先分析过程。

搜索更多关于: 编译原理重点题型简答综合选择填空 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

? 构造下面文法的LL(1)分析表 S→aBc|bAB A→aAb|b B→b|ε 构造其LL(1)分析表,并分析符号串baabbb是否是该文法的句子 答:FIRST(S)={a,b} FIRST(A)={a,b} FIRST(B)={b,ε} FOLLOW(S)={#} FOLLOW(A)={b,#} FOLLOW(B)={c,#} LL(1)分析表: 分析符号串baabbb的过程: ? 设有文法G[S]:S→CC (1) C→cC (2) C→d (3) 求:1)拓广文法 2)文法的LR(1)项目集规范族(识别活前缀的DFA) 3)构造规范LR分析表

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com