第三次作业:语法树,短语,直接短语,句柄

1.已知文法:

S->a|^|(T)

T->T,S|S

分析句型(T,(^,a)),求全部的短语、直接短语和句柄。

 

解: 语法书为:

由语法树可知全部短语:(T,(^,a))       T,(^,a)        (^,a)        ^,a        ^          a

直接短语:^      a

句柄:^

 

2.构造上下文无关文法,描述语言:

{anbn|n>=0}

{ambn|m>=n>=0}

if语句

解:

G(E):E->aEb|ab|ε

G(E):E->aEb|a|ab|ε

G[E]: E->AB

    A->aA | a |  ε

    B->bB | b |  ε

if语句->if<条件>then<语句> | if<条件>then<语句>else<语句>

G[E]:E->abE | ab| ε

G[E]:E->AB

    A->aA | a

    B->bB | b

 

 

3.如果if语句的方法:

stmt->if expr then stmt

     | if expr then stmt else stmt

     | other

句子if E1 then if E2 then S1 else S2是否有两棵不同的语法树?说明了什么?

所以对应的这个文法是二义的。

posted @ 2019-09-19 17:51  菠蘿啤  阅读(498)  评论(0编辑  收藏  举报