現在、この問題を遭遇したときに試験を勉強し、過去の論文を調べています。以下なぜこのEBNF文法はあいまいですか?
1 + 2 * 3のように、 式単純な算術を記述するEBNF文法である - 4:
Expression = Operand, {Operator, Operand}; Operand = "1"|"2"|"3"|"4"|"5"|"6"|"7"|"8"|"9"; Operator = "+"|"-"|"*"|"/";
(IV)は、この文法を使用して、発現を評価する複数の方法が存在します1 + 2 * 3 - 4.のように2つを記述し、 が提供する文法についての意味を説明します。 [2マーク]私の理解へ
、あいまいな文法は通常も優先の文法のために、いくつかのあいまいさがある意味、複数の一番左または一番右の導出、どちらかが存在することを意味します。しかしここでは優先順位はなく、再帰は線形です。
アドバイス?