Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

Automatas y compiladores tablas de transición análisis léxico

Weitere Verwandte Inhalte

Ähnliche Bücher

Kostenlos mit einer 30-tägigen Testversion von Scribd

Alle anzeigen

Ähnliche Hörbücher

Kostenlos mit einer 30-tägigen Testversion von Scribd

Alle anzeigen

Automatas y compiladores tablas de transición análisis léxico

  1. 1. Teoría de Autómatas y Compiladores Germania Rodríguez grrodriguez@utpl.edu.ec
  2. 2. De AFN a AFD •  Eliminar las transiciones con la cadena vacía ε Construir cerraduras ε que son el conjunto de todos los estados que pueden alcanzar las transiciones ε desde un estado. •  Eliminar transiciones múltiples en un carácter de entrada simple. Considerar el conjunto de estados que son alcanzables al igualar el carácter simple.
  3. 3. De AFN a AFD •  Eliminar las transiciones con la cadena vacía ε Construir cerraduras ε de un estado s como el conjunto de todos los estados alcanzables por una serie de cero o más transiciones ε y escribimos como conjunto s. Ejemplo:
  4. 4. Tablas compactas Propósito simplificar la Tabla de transición (normalmente de gran tamaño) en dos tablas. Tabla de transición o de símbolos Formada por: filas – estados del autómata, columnas – caracteres admitidos por el Lenguaje. 1. Asignar a cada carácter del lenguaje un número que representa su posición en el Lenguaje y en las columnas de la Tabla de transición o Tabla base.
  5. 5. Tablas compactas 2. Obtener la Tabla1 formada por: •  Tres columnas y número de Filas T1C1 T1C2 T1C3 igual a los estados de la Tabla 0 1 original. 1 •  Primera columna T1C1 llena con los estados de la Tabla de transición 2 •  Segunda columna T1C2 su primer elemento siempre será 1 a partir del segundo será la suma de los elementos previos en T1C2 y T1C3 •  La columna T1C3 se llena con el número de transiciones válidas o diferentes de Error.
  6. 6. Tablas compactas 3. Obtener la Tabla2 formada por: •  Tres columnas y número de Filas T2C1 T2C2 T2C3 igual a la suma de T1C2+T1C3-1 1 1 •  La primera columna T2C1 se llena 2 con una secuencia de números iniciando desde 1 3 •  Para la segunda columna T2C2 se recorre cada fila de la tabla base de n izquierda a derecha y se llena T2C2 con los estados de transición o aceptación encontrados diferentes de Error. •  La columna T2C3 con número de correspondiente al carácter con el que se llega al estado almacenado en T2C2 en la Tabla Base.
  7. 7. Tablas compactas EJEMPLO: Tabla fuente Tablas Compactas 1 2 3 4 T1C1 T1C2 T1C3 Estado I f ( ‘ ‘ 0 1 1 0 1 -1 -1 -1 1 2 1 1 -1 2 -1 -1 2 3 2 2 -1 -1 -2 -2 T2C1 T2C2 T2C3 1 1 1 2 2 2 3 -2 3 4 -2 4
  8. 8. Proceso Análisis Léxico Para obtener el token válido o de error desde las Tablas compactas se debe recorrer – En la Tabla1 ubicar el estado (de inicio para el primer caso) en T1C1 leer: T1C2 que la fila correspondiente en la Tabla2 y T1C3 el número de posibilidades a recorrer. – En la Tabla2 se ubica la fila señalada por T1C2 y se recorre T2C3 mientras sea menor o igual al valor proporcionado por T1C3 hasta ubicar el número del carácter de entrada en caso de ubicarlo leer T2C2 que indicará la fila T1C1 para repetir el proceso o el token a devolver.
  9. 9. Bibliografía •  Kenneth C. Louden, Construccion de Compiladores Principios Y Práctica •  Universidad Jaume, Open Course Ware –II20 Teoría de autómatas y lenguajes formales en: http://e-ujier.uji.es/pls/ w w w / ! g r i _ w w w . e u j i 2 2 1 0 1 ? p_id=7&p_tipo=A&p_curso=II20&p_idioma=ES

×