1

在下面的示例中,很明显,当您想要通过 状态0进入状态3T,您将面临一种状态的还原和正常状态。
老实说,我以前没有看到这一点。这就是我问的原因。

这可能吗?我应该继续减少吗?或者我错了吗?

在此处输入图像描述

如果需要,这里是语法:

E ---> E+T | T
T ---> T * F | F
F ---> (E) | ID

4

1 回答 1

1

如果您没有前瞻信息,这是一个移位/减少冲突,因为解析器无法判断它是应该移位(遵循 GOTO 信息)还是减少。因此,这个文法不会是 LR(0)。如果您有关于何时执行归约的额外上下文(也许如果您使用 SLR(1)、LALR(1) 或 LR(1) 解析器),那么在只要 shift 和 reduce 不在同一个终端符号上,就表示状态。

希望这可以帮助!

于 2014-06-03T00:57:09.043 回答