如何使这个简单的语法明确无误?

时间:2013-01-18 06:39:04

标签: grammar ambiguous-grammar

以下是BNF格式的简单DDC编译器的模糊语法:

<expr> ::= <term> | <expr> <op1> <expr>
<term> ::= <decimal arg> | <term> <op2> <decimal arg>
<decimal arg> ::= <digit> | <decimal arg> <digit>
<digit> ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
<op1> ::= + | -
<op2> ::= * | /

如何使这个语法明确无误?

1 个答案:

答案 0 :(得分:0)

我相信你的第一条规则是

<expr> ::= <term> | <expr> <op1> <term>

这将使语法明确。