1 / 9

UNIVERSIDAD VALLE DEL MOMBOY FACULTAD DE INGENIERIA ESCUELA DE COMPUTACIÓN CATEDRA: EDUMATICA

UNIVERSIDAD VALLE DEL MOMBOY FACULTAD DE INGENIERIA ESCUELA DE COMPUTACIÓN CATEDRA: EDUMATICA Br: JENNY CORONADO C.I. 13.764.674. EL COMPILADOR. CONTENIDO. ANALIZADOR LÉXICO DIAGRAMAS DE TRANSICIONES AUTÓMATAS TIPOS DE AUTOMATAS:

Download Presentation

UNIVERSIDAD VALLE DEL MOMBOY FACULTAD DE INGENIERIA ESCUELA DE COMPUTACIÓN CATEDRA: EDUMATICA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UNIVERSIDAD VALLE DEL MOMBOY FACULTAD DE INGENIERIA ESCUELA DE COMPUTACIÓN CATEDRA: EDUMATICA Br: JENNY CORONADO C.I. 13.764.674 EL COMPILADOR

  2. CONTENIDO • ANALIZADOR LÉXICO • DIAGRAMAS DE TRANSICIONES • AUTÓMATAS • TIPOS DE AUTOMATAS: • AUTÓMATAS FINITOS NO DETERMINISTAS (AFN) • AUTÓMATAS FINITOS DETERMINISTAS (AFD) • CONVERSIÓN DE UN AFN A UN AFD • CONSTRUCCION DE UN AFN APARTIR DE UNA EXPRESIÓN REGULAR

  3. ANALIZADOR LÉXICO El analizador léxico es la primera fase de un compilador. Su principal función consiste en leer los caracteres de entrada y elaborar como salida una secuencia de componentes léxicos que utiliza el analizador sintáctico para hacer el análisis. Como el analizador léxico es la parte del compilador que lee el texto fuente, también puede realizar ciertas funciones secundarias en la interfaz del usuario, como eliminar del programa fuente comentarios y espacios en blanco en forma de caracteres de espacios en blanco, caracteres TAB y de línea nueva.

  4. DIAGRAMA DE TRANSICIONES Como paso intermedio en la construcción de un analizador léxico primero se produce un diagrama de flujo estilizado, llamado diagrama de transiciones, representan las acciones que tienen lugar cuando el analizador léxico es llamado por el analizador sintáctico para obtener el siguiente componente léxico.     Las posiciones en un diagrama de transición se representan con un circulo y se llaman estados, los estados se conectan mediante flechas, llamadas aristas. Las aristas que salen del estado s tienen etiquetas que indican los caracteres de entrada que pueden aparecer después de haber llegado el diagrama de transición al  estado s

  5. AUTÓMATAS • AUTOMATAS FINITOS: •  Un reconocedor de un lenguaje es un programa que toma como entrada una cadena x y responde "Si" si x es una frase del programa y "No", si no lo es. • Un Autómata Finito puede ser: •  Autómata Finito Determinista (AFD) •  Autómata Finito No Determinista (AFN)

  6. TIPOS DE AUTÓMATAS AUTÓMATAS FINITOS NO DETERMINISTAS (AFN).-     Formado por una quíntupla o cinco entidades esenciales: Un conjunto de estados S. Un conjunto de símbolos de entrada S . Una función de transición mueve. Un estado So que se considera el estado de inicio. Un conjunto de estados F considerados como estados de aceptación. Ejemplo:     Grafo de transición de un AFN que reconoce al lenguaje (a | b)*abb

  7. AUTÓMATAS FINITOS DETERMINISTAS (AFD).- Es un caso especial de un autómata finito no determinista en el cual:     Ningún estado tiene una transición . Para cada estado S y para cada símbolo a, hay a lo sumo una arista etiquetada a que sale de S. ALGORITMO SIMULACIÒN DE UN AFD.- S=So; C=Sigcar; While C <> eof do     S: = mueve (S,C);     C: = Sigcar End; If S está en F then     Return "Sí" Else     Return "No";

  8. CONVERSIÓN DE UN AFN EN UN AFD Algoritmo : Construcción de un AFD a partir de un AFN Entrada: Un AFN N Salida: Un AFD D que acepta el mismo lenguaje. Método: El algoritmo construye una tabla de transiciones tranD para  D. Cada estado del AFD es un conjunto de estados del AFN y se construye tran D simulará en paralelo todos los posibles movimientos que N puede realizar con una determinada cadena de entrada.     Se utilizan las operaciones de la tabla para localizar los cojuntos  de los estados del AFN (s representa un estado del AFN, y T, un conjunto de estados del AFN).

  9. CONSTRUCCION DE UN AFN A PARTIR DE UNA EXPRESION REGULAR • Algoritmo: construcción de un AFN a partir de una expresión regular • Entrada: Una expresión regular r en un alfabeto S  • Salida: Un AFN N que acepte L(r) • Para vacio, construir el AFN • Para a del alfabeto, construir el AFN • Supóngase que N(s) y N(t) son AFN para las expresiones regulares s y t • Para las expresiones regular s | t, constrúyase el siguiente AFN compuesto N(s | t ) • Para la expresión regular st, constrúyase el AFN, compuesto N(st) • Para la expresión regular s*, constrúyase el AFN compuesto N(s*): • Para la expresión regular entre paréntesis (s), utilícese N(s) como AFN. • Cada vez que se construye un nuevo estado, se le da un nombre distinto. De esta forma, no puede haber dos estados de un AFN componentes con el mismo nombre. Aunque aparezcan los mismos símbolos varias veces en r, se crea para cada ejemplo ese símbolo un AFN aparte con sus propios estados.

More Related