![](https://lstatic.shangxueba.com/sxbzda/h5/images/m_q_title.png)
给定文法G’(S'):S’→SS→(L)|aL +L,s| S试为该文法配上属性计算的语义规则(或动作)集合(即设计一个属性文法),它输出配对括号的个数。如对于句子(a, (a)),输出是2。
![](https://lstatic.shangxueba.com/sxbzda/h5/images/tips_org.png)
第1题
第2题
答:
6.对上题中所给的G[S]的属性文法是一个S-属性文法,故可以在自下而上分析的过程中,增加一个语义栈来计算属性值。下图(a)是G[S]的一个LR分析表,图(b) 描述了输入串(a,(a))的分析和计值过程(语义栈中的值对应S.num或L.num ),其中,第14),15)行没有给出,试补齐之。
第3题
给定文法G[S]:
S→(L)| d
L.→L,s|S
如下是相应于G[S]的一个属性文法:
(1)S→(L) { S.num := L.num +1; }
(2)S→a {S.num:=0;}
(3)L→L1,S { L.num := L.num + S. num;}
(4)L→S { L.num := S. num; }
下图分别是输入串(a, (a) )的语法分析树和对应的带标注语法树,但其属性值没有标出,试将其标出(即填写右下图中符号“=”右边的值)。
答:
5.给定文法G[S]:
S→(L)| d
L.→L,s|S
如下是相应于G[S]的一个属性文法:
(1)S→(L) { S.num := L.num +1; }
(2)S→a {S.num:=0;}
(3)L→L1,S { L.num := L.num + S. num;}
(4)L→S { L.num := S. num; }
下图分别是输入串(a, (a) )的语法分析树和对应的带标注语法树,但其属性值没有标出,试将其标出(即填写右下图中符号“=”右边的值)。
第7题
一个上下文无关文法生成句子abbaa的推导树如下:
(1)给出串abbaa最左推导、最右推导。
(2)该文法的产生式集合P可能有哪些元素?
(3)找出该句子的所有短语、直接短语、句柄。
第10题
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!