手机版

编译原理 龙书答案(4)

发布时间:2021-06-08   来源:未知    
字号:

编译原理 龙书答案

(Aho)4.4考虑文法

R→R ‘|’ R | RR | R* | (R) | a | b c) 构造等价的非二义性文法 R→R ‘|’ A | A A→A B | B B→B* | C C→( R ) | a | b

(Aho)4.5下面if-then-else文法试图消除空悬else的二义性,证明它仍是二义性的 stmt→if expr then stmt | matched_stmt

matched_stmt→if expr then matched_stmt else stmt | other 解:

用S、M、E表示stmt、matched_stmt和expr,用i、t、e、o表示if、then、else和other 则句子i E t i E t o e i E t o e o对应两个最左推导:

i E t i E t o e i E t o e o

i E t i E t o e i E t o e o 因此文法是二义性文法

直接构造比较困难,可从SLR分析表的构造角度考虑,LR(0)项目集规范族中,项目 I8={M→i E t M e S, S→ M},有移进/归约冲突,这就是是二义性所在。

显然,存在句型...i E t M e S...和...i E t S e S...,当M位于栈顶时,产生移进/归约冲突。 按此思路,构造形如... i E t S e S...的句型即可

(Aho)4.6 为下列语言设计上下文无关文法。哪些语言是正规式? a) 满足这样条件的二进制串:每个0之后都紧跟着至少一个1 S→0 A | 1 S | A→1 S

正规式:(1 | 01)*

b) 0和1个数相等的二进制串 S→0 S 1 S | 1 S 0 S |

d) 不含011子串的二进制串 S→0 A | 1 S | A→0 A | 1 B | B→0 A |

编译原理 龙书答案(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)