我昨天和今天都花了 7 个小时试图找到作业中问题的明确答案。我已经观看了数小时关于 BNF 和 EBNF 的讲座,但没有人解决我的问题。虽然我学到了很多东西:)
我希望有人可以指出方式:
鉴于这个语法
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
递归。我真的很想知道我错过了什么。
作业中的其他问题改变了我回答的规则的顺序:在生产级联中较低的规则具有较高的优先级。