Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Una tcnica para traducir gramticas independientes del contexto a autmatas de pila es seguir el
proceso de construccin que produce un autmata de pila que analiza su cadena de entrada
marcando antes el fondo de la pila e insertando en la pila el smbolo inicial de la gramtica. Luego
se aplica:
1. Si la cima de la pila contiene un no terminal de la gramtica se reemplaza de acuerdo con
una de las reglas de reescritura de la gramtica.
2. Si la cima de la pila contiene un terminal, se elimina de la pila si es el que se lee en la
entrada. Si no se declara cadena ilegal.
3. Si aparece la marca de fondo de pila, se elimina y se acepta la porcin de la cadena de
entrada procesada hasta el momento.
Este proceso analiza la sintaxis de la cadena de entrada produciendo una derivacin por la
izquierda, conforma lee de izquierda a derecha. Por lo que acta como un programa obtenido de la
traduccin directa del autmata. Los analizadores sintcticos desarrollados de esta manera se
conocen como analizadores sintcticos LL.
Analizador Sintctico LR
Analizador sintcticos LR. Tambin conocidos como parser LR, son un tipo de analizadores para
algunas gramticas libres de contexto. Pertenece a la familia de los analizadores ascendentes, ya
que construyen el rbol sintctico de las hojas hacia la raz. Utilizan la tcnica de anlisis por
desplazamiento reduccin. Existen tres tipos de parsers LR: SLR (K), LALR (K) y LR (K) cannico.
En trminos generales un analizador sintctico LR transfiere smbolos de su entrada a la pila hasta
que los smbolos superiores de la pila sean iguales al lado derecho de alguna regla de reescritura
de la gramtica en que se basa el analizador. Al llegar a este punto el analizador sintctico puede
reemplazar estos smbolos con el no terminal que se encuentra en el lado izquierdo de la regla de
reescritura
antes
de
transferir
otros
smbolos
de
la
entrada
a
la
pila.
De esta manera, la pila acumula cadenas de terminales y no terminales, que a su vez son
reemplazados por no terminales ms altos de la gramtica. Por ltimo, todo el contenido de la pila
se reduce al smbolo inicial de la gramtica, indicando que los smbolos ledos hasta ese punto
forman una cadena que puede derivarse con la gramtica.
Un analizador LR consta de:
1. Un programa conductor
2. Una entrada
3. Una salida
4. Una tabla de anlisis sintctico, compuesta de 2 partes (ACCIN Y GOTO)
Proceso de anlisis LR
Con base a este esquema general los analizadores sintcticos LR(k) se clasifican como analizador
sintctico ascendente, ya que sus actividades corresponden a la construccin de ocurrencias de no
terminales a partir de sus componentes, hasta generar el smbolo inicial de la gramtica.
Los analizadores sintcticos LL(k) se conocen como analizadores sintcticos descendentes ya que
comienzan con el smbolo inicial de la pila y dividen los no terminales de la pila hasta generar una
cadena similar a la entrada.