2016-12-19 16 views
0

Я не понимаю, это двоичное выражение грамматикаКак я могу понять эту двоичную грамматику выражения?

expr -> expr '+' term 
     | expr '-' term 
     | term 

term -> term '*' factor 
     | term '/' factor 
     | factor 

factor -> '(' expr ')' 
     | NUM 
+1

Что вы не понимаю? '->' означает, что левый операнд может принимать значения вправо, '|' означает, что значение before и value after являются действительными, и это о нем. – njzk2

+0

например: '3' - это NUM, поэтому это действительный коэффициент, действительный термин и действительный expr. '3 * 4' - фактор-фактор, поэтому он является действительным термином и действительным expr и т. Д. – njzk2

+0

Граммер описывает выражение [infix] (https://en.wikipedia.org/wiki/Infix_notation). – user3386109

ответ

1

На простом английском языке:

expr может быть один из следующих:

  • другого expr с последующим символом + с последующим a term
  • другое expr, за которым следует персонаж - с последующим term
  • term

term может быть одним из следующих:

  • другой term, за которым следует символ * с последующим factor
  • другой term сопровождаемый знак /, за которым следует factor
  • factor

factor может быть один из следующих:

  • персонаж ( затем и expr следует символ )
  • ряд