Escolar Documentos
Profissional Documentos
Cultura Documentos
INVESTIGACION
UNIDAD 6
LENGUAJES AUTOMATAS
Herramienta formal que puede ser vista tanto desde un punto de vista
generador como estructurador.
G = (V, T, P, S)
S V, smbolo inicial
los nodo interiores del rbol estn etiquetados por los smbolos no
terminales
Para cada cadena del lenguaje generado por una gramtica es posible construir
(al menos) un rbol de derivacin, en el cual cada hoja tiene como rtulo uno de
los smbolos de la cadena.
rbol de derivacin.
Ejemplo:
Sea G=(N, T, S, P) una GLC con P: S ab|aSb
La derivacin de la cadena aaabbb ser: S aSb aaSbb aaabbb y el rbol
de derivacin:
A BC o
Aao
donde A, B y C son smbolos no terminales (o variables) y es un smbolo
terminal.
Todo lenguaje independiente del contexto que no posee a la cadena vaca, es
expresable por medio de una gramtica en forma normal de Chomsky (GFNCH) y
recprocamente. Adems, dada una gramtica independiente del contexto, es
posible algortmicamente producir una GFNCH equivalente, es decir, que genera
el mismo lenguaje.
Sea G = ( N, T, P, $) una gramtica con P N X (N U T)* y X N un
smbolo no-terminal (o una variable). Podemos clasificar tales smbolos X en tres
clases:
Variables accesibles:
Variables generativas:
Variables tiles:
Si existe una derivacin desde el smbolo inicial usando que produce una
sentencia , es decir, existe $ * X * donde , * y *T.
Tipos de Ambigedad
Dentro del estudio de gramticas existen dos tipos fundamentales de ambigedad,
los cuales son:
Ambigedad Inherente:
Las gramticas que presentan este tipo de ambigedad no pueden utilizarse para
lenguajes de programacin, ya que por ms transformaciones que se realicen
sobre ellas, nunca se podr eliminar completamente la ambigedad que
presentan:
Un lenguaje L es inherentemente ambiguo si todas sus gramticas; si existe
cuando menos una gramtica no ambigua para L, L no es ambiguo.
FOLLOW: Con las mismas notaciones anteriores, para cada forma sentencia
(V U )* definiremos la funcin FOLLOWG GK () del modo siguiente.
Errores Sintcticos.
Muchos errores de naturaleza sintctica Recuperacin: Al producirse un error el
compilador debe ser capaz de informar del error y seguir compilando. (Ideal).
El manejo de errores de sintaxis es el ms complicado desde el punto de vista de
la creacin de compiladores. Nos interesa que cuando el compilador encuentre un
error, se recupere y siga buscando errores. Por lo tanto el manejador de errores de
un analizador sintctico debe tener como objetivos:
Un buen compilador debe hacerse siempre teniendo tambin en mente los errores
que se pueden producir; con ello se consigue:
Errores semnticos.
BIBLIOGRAFIA:
http://es.calameo.com/read/00417829836248f81d
bd4
http://10380054.galeon.com/u6.htm
http://mitecnologico.com/sistemas/Main/LenguajeY
AutomatasI