Analizadores descendentes-> Analizadores ascendentes

ANALIZADORES DESCENDENTES

Para utilizar un analizador descendente, la gramatica no tiene que ser ambigua y no pude ser
recursiva por la izquierda.

Ejemplo:

AMBIGUA
S::=E
E::=E+E|
      E*E
      |(E)
      |num

NO AMBIGUA

S::=E
E::=E+T
T::=T*F
F::=(E)
      |num

SIN RECURSIVIDAD

S::=E
E::= TE’
E’::= +TE’
      |epsilon
T::= FT’
T’::= *FT’
      |epsilon
F::= (E)
      |num

Transformación de Gramática Ascendente a Descendente

X::= XY{Acciones}
      |Z{Acciones}

Se transforma en:
X::= Z{Acciones}X’                  En las acciones hay que utilizar heredados en
X’::= Y{Acciones}X’                alguna parte    


Entradas populares de este blog

Página de inicio de sesión en React Native en 4 simples pasos

Ejercicios de Gramaticas Compiladores 2

Variables de sesion JSP