所谓对某些二义性文法,如果人为地给出优先性和结合性的规定,构造的LR分析器比相应非二义性文法的更优越,是指对同一个语言的二义性文法构造的LR分析器比它的非二义性文法构造的LR分析器的状态数目少,分析速度快。
例如:我们所熟悉的算术表达式的二义性文法为:
E→E+E|E*E|(E)|i
相应的非二义性文法可为:
E→E+T|T
T→T*F|F
F→(E)|i
现在我们构造算术表达式二义性文法的LR(0)项目集,用表7.16的状态转换矩阵表示。