88问答网
所有问题
编译原理语法分析中,求first,follow集合时,要消除左递归吗
如题所述
举报该问题
推荐答案 2012-11-10
如果题目是单纯求first、follow集合,不需要消除左递归。但是,如果求first、follow集合是为了判断文法是否为LL(1)文法的话,可以直接得出否定的结论(因为含有左递归的文法绝对不是LL(1)文法)。可以先对文法进行改写,一般是消除左递归和提取左公共因子,然后再判断。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://88.wendadaohang.com/zd/SB1agccSc.html
其他回答
第1个回答 2012-11-13
貌似需要。祝好运。
相似回答
编译原理
:考虑
文法
G[S]
答:
(1)消去
左递归
后:S→a|∧|(T)T→ST’T’ →,ST’|ε (2)计算每个非终结符的
FIRST集合
和
FOLLOW集合
:FIRST(S)={a,∧,(} FIRST(T)={ a,∧,(} FIRST(T’)={,ε} FOLLOW(S)={,#} FOLLOW(T)={ )} FOLLOW(T’)={ )} 预测分析表如下:\x09a\x09∧\x09(\x09)\x09,\x09 S\...
编译原理
问题,高手进。
答:
FOLLOW
(B) = {a,# }FOLLOW (D) = { b} 检查文法的所有产生式,我们可以得到:1. 该文法不含
左递归,
2. 该
文法中
每一个非终结符M,T,B,D的各个产生式的候选首符集两两不相交。3. 该文法的非终结符T、B和D,它们都有候选式,而且
FIRST
(T)∩FOLLOW(T)={ a,b,e,d }≠ ...
编译原理
-
语法分析
详解
答:
3. 解决策略消除二义性和
左递归
- 二义性通过文法结构的清晰化得以解决,不详述具体操作。 - 左递归通过引入新变量消除公共前缀,避免无限推导。LL(1)文法与SELECT集 - LL(1)文法的关键在于每个A的候选产生式中,第一个终结符各不相同。通过计算
FIRST集
、
FOLLOW集,
判断文法的可行性。4. ...
编译原理
题目
答:
11、采用自上而下分析,必须 。a.
消除左递归
b. 消除右递归 c. 消除回溯 d. 提取公共左因子12、在规范归约中,用 来刻画可归约串。a. 直接短语 b. 句柄 c. 最左素短语 d. 素短语13、有文法G:E→E*T|T T→T+i|i句子1+2*8+6按该文法G归约,其值为 。a. 23 B. 42 c. 30 d. 1714...
编译原理语法分析中消除左递归
的问题。比如A→Ab|c中为什么说它是左递归...
答:
A->Ab|c为什么是左递归,和为什么
要消除左递归
:定义,就无需争辩了。至于为什么自顶向下文法不能处理左递归,解释如下:c∈
FIRST
(A),所以当预测分析的栈顶出现非终结符A,而输入字符串最左边为c时,就不知道用产生式A->Ab还是A->c了。无法构造预测分析表。比如输入字符串为cbb,我们人当然容易...
关于LL(1)
文法
答:
first
(F)={(,i} follow(E)={#,)}
,follow
(D)={#,)},follow(T)={+,-,#,)} follow(S)={+,-,#,)} follow(F)={*,/,+,-,#,)} (2)select(E->TD)=
FIRST
(TD)={(,i} SELECT(E->+TD)={+} SELECT(E->-TD)={-} SELECT(E->ε)={#,)} SELECT(T->FS)={(,i} ...
编译原理
的
消除左递归
是怎么回事啊?
答:
-> Ab A -> e 就是有左递归
,语法分析
里的递归下降法和LL(1)就不能处理啦,因为程序会陷入递归而无法前进。而CFG A -> bA'A' -> bA'|e 和前面一个表达的语言是一样的,但所有语法的第一项都是终结符,就消除了左递归。有
消除左递归
的算法,一般
编译原理
书上会有介绍,不是很复杂。
编译原理
设
文法
G[S] 求答案!
答:
·
消除左递归
S→aAS'|∧aAS'S'→VaAS'|ε 对A的产生式提取左因子 A→∧aA' A'→A|ε · 非终结符合
First
Follow S
a ∧ S’ V ε A ∧ A‘ ∧ Select(S→aAS')=a Select(S→∧aAS')=∧ Select(S'→VaAS')=V Select(S'→ε)= Select(A→∧aA')...
大家正在搜
编译原理语法分析follow
编译原理中first集的求法
编译原理follow集合
编译原理求follow集
编译原理first集合
编译原理如何求follow
编译原理follow集怎么算
求first和follow集
编译原理select集合
相关问题
怎么求编译原理中的first集,follow集和selec集
编译原理语法分析中消除左递归的问题。比如A→Ab|c中为什么...
编译原理:消除文法中的左递归
编译原理题,在建立LL(1)语法分析器时,提左因子和消除左递...
编译原理的消除左递归是怎么回事啊?
编译原理求解答案