2012-11-17 16 views
1

我已经花了昨天的所有时间和今天的7个小时试图找到一个赋值问题的确定答案。我看了几个小时的关于BNF和EBNF的讲座,但没有一个解决了我的问题。我已经学会了负载虽然:)BNF:交换非终端在语法规则中的位置对生产的影响

我希望有人可以点方式:

鉴于这种语法

G = {N, T, S, P} 
T = {a, b, c, - , ×} 
N = {<goal>, <expr>, <term>, <factor>} 
S = <goal> 
P = 
<goal> ::= <expr> 
<expr> ::= <term> | <expr> - <term> 
<term> ::= <factor> | <term> × <factor> 
<factor> ::= a|b|c 

,然后更改规则:

<goal> ::= <expr> 
<expr> ::= <term> | <term> - <expr> 
<term> ::= <factor> | <factor> × <term> 
<factor> ::= a|b|c 

什么影响它有生产吗?

我只能看到它将LHS递归更改为RHS递归。我真的很想知道我错过了什么。

作业中的其他问题改变了我所回答的规则的顺序:生产级联中较低的规则具有较高的优先级。

回答

0

经过与讲师的咨询后,我确认了唯一的区别是:它将LHS递归更改为RHS递归。

相关问题