LR(1)文法都是()。

题目
单选题
LR(1)文法都是()。
A

无二义性且无左递归

B

可能有二义性但无左递归

C

无二义性但可能是左递归

D

可以既有二义性又有左递归

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

文法G[S]:S→AB,B→BB|B不是LR(0)文法。()

此题为判断题(对,错)。


正确答案:错误

第2题:

一个LR(1)文法合并同心集后,如果不是LALR(1)文法必定存在( )。

A.移进--归约冲突

B.归约--归约冲突


正确答案:B

第3题:

任何一个二义性文法一定不是LR类文法,也不是一个算符优先文法。()

此题为判断题(对,错)。


正确答案:√

第4题:

SFP 接口链路状态指示灯红灯 1s 亮 1s 灭表示()

A:lr 链路正常

B:光模块收发异常

C:lr 链路上 的射频模块存在硬 件故障

D:lr 失锁或 lr 链路上 RRU 存在驻波


参考答案D

第5题:

一个文法,如果能为它构造出所有条目都唯一的LR分析表,就说它是LR文法。()

此题为判断题(对,错)。


正确答案:正确

第6题:

若给定文法G和某个固定的k,则G是否是LR(k)文法是可判定的。()

此题为判断题(对,错)。


正确答案:正确

第7题:

考虑下述文法,S为开始符号 G1[S]:S→A A→aAb | ab G2[S] S→AA→aA |a| 下列结论中为真的是(28)。

A.G1是LR(0)文法,G2不是LR(1)文法

B.G2是LR(0)文法,G1不是LR(1)文法

C.G2是LR(1)文法,G1不是LR(1)文法

D.G1和G2都是LR(1)文法


正确答案:A
解析:因为G2存在句子aa,该句子有两棵不同的语法树,所以文法G2是二义性文法。二义性文法不是LR文法,所以B、C、D不正确。选A。

第8题:

把形如[A→αβ,a]的项目称为一个什么项目()。

A.LR(1)

B.LR(0)

C.SLR(1)

D.LALR(1)


正确答案:A

第9题:

yacc是一个生成编译程序的工具,它的输入是文法G的产生式规则,它的输出是文法G的(29)。

A.优先分析器

B.LL(1)分析器

C.LR(1)分析器

D.LALR(1)分析器


正确答案:D
解析:一个LR分析器由以下3个部分组成。(1)驱动器:或称驱动程序。对所有LR分析器,驱动程序都是相同的。(2)分析表:不同的文法具有不同的分析表。同一文法采用不同的LR分析方法时,分析表也不同。分析表又可分为动作表(ACTION)和状态转换表(GOTO)两个部分,它们都可用二维数组表示。(3)分析栈:包括文法符号栈和相应的状态栈。分析器的动作由栈顶状态和当前输入符号决定(LR(0)分析器不须向前查看输入符号),LR分析器的模型如下图所示。设Si为状态,i为文法符号,ACTION[Si,a]=Sj规定了栈顶状态为Si且遇到输入符号a时应执行的动作。状态转换表GOTO[Si,X]=Sj表示当状态栈顶为Si且文法符号栈顶为X时应转向状态Sj。分析表实际上是一个DFA,它识别文法G的所有右句型的活前缀。构造LR分析器,本质上是构造LR分析表。根据文法的产生式规则,LR分析表用程序能自动生成。yacc的输入,本质上是文法的产生式规则,称为yacc的源程序,通过yacc编译程序,生成用C书写的LALR(1)分析表。再经过C编译器,就得到LALR(1)分析器。LALR(1)分析器比SLR(1)适用的文法范围要宽,一般能满足常用程序语言的需要;和LR(1)比,它适用的文法范围要窄,但时空效率都有很大提高。

第10题:

LR方法可以分析含有左递归的文法。()

此题为判断题(对,错)。


正确答案:正确