В чем разница между грамматикой операторов и грамматикой приоритета операторов? Объясните тоже на примерах. Я готовлюсь к экзамену и не могу его найти.
В операторной грамматике правая часть не пуста и не имеет двух последовательных нетерминалов. Грамматика приоритета операторов — это грамматика операторов, в которой вычисленные отношения приоритета однозначны.
В наши дни статья Флойда 1963 года кажется платной, хотя у вас может быть доступ к ней в вашем университете. Но основные свойства резюмируются на первых нескольких страницах статьи Стефано Креспи-Региззи 1978 года, Алгебраические свойства языков приоритета операторов.
Грамматика оператора: Грамматика, созданная для определения математических операторов или identifier
называется грамматикой оператора с некоторыми ограничениями на грамматику.
пример: E->E+E/E*E/id
в то время как; грамматика приоритета оператора является контекстно-свободной грамматикой, обладающий тем свойством, что ни одна продукция не имеет либо пустой правой части (пустые продукции), либо двух смежных нетерминалов в правой части. пример:
S->SAS/a
A->bSb/b
Хотя мы можем преобразовать его в операторную грамматику:
S->SbSbS/SbS/a
A->bSb/b
надеюсь, это поможет вам .. для дальнейшего обучения вы можете проверить это
https://www.geeksforgeeks.org/theory-computation-operator-grammar-precedence-parser/