1 / 6

1 对于文法 G(E): E  T|E+T T  F|T*F F  (E)|i 1. 写出句型 T*F+i1*i2 的最右推导。 2. 写出上述句型的短语,直接短语、句柄。

1 对于文法 G(E): E  T|E+T T  F|T*F F  (E)|i 1. 写出句型 T*F+i1*i2 的最右推导。 2. 写出上述句型的短语,直接短语、句柄。 3 . 写出上述句型的素短语和最左素短语。 短语 : T*F +i1*i2, T*F, i1*i2 , i1, i2 直接短语: T*F, i1, i2 句柄: T*F 素短语: T*F, i1, i2 最左素短语: T*F. 对于文法 G(E): E  T|E+T T  F|T*F F  (E)|i

cael
Download Presentation

1 对于文法 G(E): E  T|E+T T  F|T*F F  (E)|i 1. 写出句型 T*F+i1*i2 的最右推导。 2. 写出上述句型的短语,直接短语、句柄。

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 1 对于文法G(E): ET|E+T TF|T*F F(E)|i 1. 写出句型T*F+i1*i2的最右推导。 2. 写出上述句型的短语,直接短语、句柄。 3.写出上述句型的素短语和最左素短语。 短语:T*F +i1*i2, T*F, i1*i2 , i1, i2 直接短语:T*F, i1, i2 句柄:T*F 素短语:T*F, i1, i2 最左素短语:T*F 对于文法G(E): ET|E+T TF|T*F F(E)|i 1. 写出句型(T*F+i)的最右推导。 2. 写出上述句型的短语,直接短语、句柄。 3.写出上述句型的素短语和最左素短语。 短语:(T*F+i), T*F+i, T*F, i 直接短语:T*F, i 句柄:T*F 素短语:T*F,i 最左素短语:T*F

  2. 2 设文法G(S), 构造各非终结符的FIRSTVT和LASTVT集合 答: FIRSTVT(S)={ i,+,),( } FIRSTVT(A)={ +,),( } FIRSTVT(B)={ ),( } LASTVT(S)={ i,+,*,( } LASTVT(A)={ +,*,( } LASTVT(B)={ *,( }

  3. 3:已知文法G[A]: A->(A)|a,给出G的所有LR(0)项目 , 构造该文法的LR(0)项目集规范族 ,构造该文法的LR(0)分析表 。 答:(1) 首先构造文法的拓广文法为: (0)S->A (1) A->(A) (2) A->a 此文法的所有LR(0)项目为: [1] S->.A [2] S->A. [3] A->.(A) [4] A->(.A) [5] A->(A.) [6] A->(A). [7] A->a. [8] A->a. (2)I0=closure({S->.A})={S->.A,A->.(A),A->.a} GO(I0,A )={S->A.}=I1 GO(I0,( )={A->(.A), A->.(A),A->.a}=I2 GO(I0,a )={A->a.}=I3 GO(I2,A )={A->(A.)}=I4 GO(I2,( )={ A->(.A), A->.(A),A->.a}=I2 GO(I2,a )={A->a.}=I3 GO(I4,) )={A->(A).}=I5 则该文法的LR(0)项目集规范族 C={I0,I1,I2 ,I3,I4,I5}。 (3)该文法的LR(0)分析表为:

  4. : 已知文法G[S]: S->BB,B->aB|b给出G的所有 • LR(0)项目 , 构造该文法的LR(0)项目集规范族 , • 构造该文法的LR(0)分析表 。 • 答:(1)列出所有的LR(0)项目如下: • 1)S->·BB 2)S->B·B 3)S->BB· • 4)B->·aB 5)B->a·B 6)B->aB· • 7)B->·b 8)B->b· • (2)I0=closure({S->·BB })={S->·BB,B->·aB, B->·b} • GO(I0,B)={S->B·B,B->·aB, B->·b}=I1 • G0(I0,a)={B->a·B,B->·aB,B->·b}=I2 • G0(I0,b)={B->b·}=I3 • G0(I1,B)={ S->BB· }=I4 • G0(I1,a)={ B->a·B, B->·aB, B->·b}=I2 • G0(I1,b)={B->b·}=I3 • G0(I2,B)={B->aB·}=I5 • G0(I2,a)={B->a·B,B->·aB,B->·b}=I2 • G0(I2,b)={B->b·}=I3 • 则该文法的LR(0)项目集规范族 • C={I0,I1,I2 ,I3,I4,I5}。 • (3)该文法的LR(0)分析表为:

  5. 5 求文法G[S] S->aBc | bAB A-> aAb | b B-> b | ε 构造其LL(1)分析表,并分析符号串baabbb是否该文法的句子 因为Follow(B)=FIRST(c) ∪FOLLOW(S)={C,#}, 所以构造文法G[S]的LL(1)分析表如下表: 分析符号串baabbb是否该文法的句子的过程 分析成功,符号串baabbb是该文法的句子

  6. 6 给出文法E->E+T T->T*F|F F->(E)|i 找出算符优先级 注意本题还要熟练掌握 FIRSTVT(E)={ } FIRSTVT(T )={ } FIRSTVT( F)={ } LASTVT(E)={ } LASTVT(T)={ } LASTVT(F)={ }

More Related