LR(1)-разбор
Версия от 18:36, 15 июня 2015; 188.227.78.184 (обсуждение)
Эта статья находится в разработке!
Отличия от SLR-разбора
<wikitex> Основным отличием LR(1)-разбора от SLR-разбора является использование предпросмотра(англ. lookahead) символов.
Приведём пример, ситуации, в которой SLR-разбор не справится с задачей:
Рассмотрим грамматику вида: $ S \to L=R | R \\ L \to *R | id \\ R \to L $
Покажем её канонический LR(0) - набор:
$I_0$ | $I_1$ | $I_2$ | $I_3$ | $I_4$ | $I_5$ | $I_6$ | $I_7$ | $I_8$ | $I_9$ |
---|---|---|---|---|---|---|---|---|---|
$A \to B$ $S' \to \cdot S$ $S \to \cdot L = R$ $S \to \cdot R$ $L \to \cdot * R$ $L \to \cdot id$ $R \to \cdot L$ | $A \to B$ | $A \to B$ | $A \to B$ | $A \to B$ | $A \to B$ | $A \to B$ | $A \to B$ | $A \to B$ | $A \to B$ |
</wikitex>