编译原理 将算术运算表达式写成算符优先文法?

将算术运算表达式写成算符优先文法是怎么做的?能否举个例子

算符优先分析法比LR分析(规范归约)法的归约速度快。在LR分析一章的语法分析器自动生成工具Yacc中,对算数表达式的归约往往会用到算符优先关系的概念。算符优先分析的缺点是对文法有一定的限制,在实际应用中往往只用于算数表达式的归约。由于算符优先分析不是规范归约,所以可能把不是文法的句子错误的归约成功
温馨提示:内容为网友见解,仅供参考
无其他回答

...怎么确保正确的优先级和结合性「编译原理」
结合性问题涉及到运算符的计算顺序,通常,算术运算符是左结合的,即从左到右计算。例如,表达式“2+3+4”应该先计算“3+4”,然后与“2”相加。为了确保正确的结合性,我们可以通过调整语法规则,例如将递归项放在运算符的左侧,来解决左递归问题。消除左递归的方法通常是将左递归文法转换为非左递归...

相似回答