![](https://static.youtibao.com/asksite/comm/h5/images/m_q_title.png)
试判断下面哪些文法是LL(1)的?如果不是,哪些能改写为LL(1)文法并改写。 (1)S→A|B A→aA|
试判断下面哪些文法是LL(1)的?如果不是,哪些能改写为LL(1)文法并改写。 (1)S→A|B A→aA|a B→bB|b (2)S→AB A→Ba|ε B→Db|D D→d→|ε (3)M→MaH|H H→b(M)|(M)|b (4)A→bB|ε B→Abb|a (5)A→aABe|a B→Bb|d (6)S→Ab|Ba A→aA|a B→a
![](https://static.youtibao.com/asksite/comm/h5/images/solist_ts.png)
试判断下面哪些文法是LL(1)的?如果不是,哪些能改写为LL(1)文法并改写。 (1)S→A|B A→aA|a B→bB|b (2)S→AB A→Ba|ε B→Db|D D→d→|ε (3)M→MaH|H H→b(M)|(M)|b (4)A→bB|ε B→Abb|a (5)A→aABe|a B→Bb|d (6)S→Ab|Ba A→aA|a B→a
判断下列文法是否是LL(1)文法。若是LL(1)文法为其构造LL(1)分析表。 (1)S→aABC|ε A→a|bbD B→a|ε C→b |ε D→c|s (2)A→BCc|eDB B→ε|bCD C→DaB|ca D→|dD (3)S→(X|E]|F) X→E)|F] E→A F→A A→e
设有文法G(A): A→aAB|a B→Bb|d (1)证明文法G(A)是否为LL(1)文法?说明为什么? (2)试改写文法为LL(1)文法。
LL(1)文法的判断。
作业要求:
LL(1)文法本质含义是第一个L表明自顶向下分析是从左向右扫描输入串,第2个L表明分析过程中将使用最左推导,1表明只需向右看一个符号便可决定如何推导,即选择哪个产生式(规则)进行推导。
有以下文法G:
E->TE'
E'->+E|ε
T->FT'
T'->T|ε
F->PF'
F'->*F'|ε
P->(E)|a|b|^
(1)计算这个文法每个非终结符的FIRST集和FOLLOW集。
(2)证明这个方法是LL(1)的。
设有下列文法: PROGRAM→begin d;S end S→d;S|sT T→εf;sT (1)试构造该文法的LL(1)分析表。 (2)给出句子begin d;s;s end的分析过程。
设有下列文法 (1)S→AS|b A→SA|a (2)S→aSbS|bSaS|ε (3)S→A A→AB|ε B→aB|b 证明上述文法是否为LL(1)文法。若不是LL(1)文法,判断并说明能否改写成LL(1)。为什么?
设有文法G的LR(1)项目集规范族和GO函数,用如图5—4所示的FA表示。试判断G是四类LR文法的哪一类,并简要说明理由。
设有如下文法G(S是G的开始符号): G:S→A*B|B A→*B|* B→A (1)求文法G的LR(1)初始项目集I0,并求出GO(I0,*)。 (2)试判断文法G是四类LR文法的哪一类。