Your SlideShare is downloading. ×
Compiladores, Analisis Lexico
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Compiladores, Analisis Lexico

739
views

Published on

Descripción de la primera etapa del proceso de compilación, el Análisis Léxico.

Descripción de la primera etapa del proceso de compilación, el Análisis Léxico.

Published in: Education

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
739
On Slideshare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
29
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. ANALISIS LEXICO y Diagramas de Transición Análisis Lexico y Diagramas de Transición 1
  • 2. Análisis Lexico y Diagramas de Transición 2 Objetivos  Conocer el funcionamiento del analizador léxico  Comprender su relación con la tabla de símbolos.  Entender como interviene la generación de errores a partir de ésta etapa.  Aprender a especificar un analizador léxico.  Realizar diagramas y tablas de transicion.
  • 3. Análisis Lexico y Diagramas de Transición 3 Términos Token ◦ Elemento léxico del lenguaje ◦ Símbolo No Terminal de las fases siguientes Patrón ◦ Expresión regular que define el lenguaje ◦ Letra (Letra | Digito)*
  • 4. Análisis Lexico y Diagramas de Transición 4 Términos Lexema ◦ Secuencia de caracteres que concuerda con un patrón ◦ Numero, caracter. Atributos ◦ Estructura de datos de cada token para almacenarse en la TS ◦ Depende del tipo de token ◦ [ID, Lexema, Tipo, Valor, línea]
  • 5. Análisis Lexico y Diagramas de Transición 5 Pasos del AL  Identificar la colección de tokens  Estructurar la colección de tokens  Describir el lenguaje como expresiones regulares  Especificar un Diagrama de Transición  Traducir el Diagrama a una tabla de transición
  • 6. Análisis Lexico y Diagramas de Transición 6 Ejemplo  Analizador léxico que reconozca los siguientes elementos:  Números enteros  Operadores aritméticos suma, resta, producto, división, incremento y decremento (+, - *, /, ++,--)  Identificadores  WHILE
  • 7. Análisis Lexico y Diagramas de Transición 7 Especificación AL Especificación formal  Gramáticas Lineales  Recursivas a izquierdas  Recursivas a derechas  expresiones regulares  Autómatas Finitos (Diagramas de Transición)
  • 8. Análisis Lexico y Diagramas de Transición 8 Funciones del AL  Tratar con la tabla de símbolos  Generar tokens bajo demanda del analizador sintáctico  Manejar el fichero fuente  Ignorar comentarios  Contabilizar posición de tokens  Preprocesar macros, constantes, includes…
  • 9. Análisis Lexico y Diagramas de Transición 9 Gramáticas Gramáticas Linealmente Recursivas Alfabeto terminal Alfabeto no terminal Axioma Reglas de producción
  • 10. Análisis Lexico y Diagramas de Transición 10 Tipos de Gramáticas Tipos de gramáticas recursivas:  Recursividad a izquierdas S := A letra | A digito A := A letra | A digito | letra  Recursividad a derechas S := letra A A := letra A | digito A | letra | digito
  • 11. Análisis Lexico y Diagramas de Transición 11 Expresiones Regulares  Alfabeto  Cierre simétrico + (1 o más)  Cierre transitivo * (0 o más)
  • 12. Análisis Lexico y Diagramas de Transición 12 Ejemplos a*(b | c)+ bccbcbccbc abbbccc abbcbcccbbc (0-9)*.(0-9)+ 0.236425 3567.45627 .758478 5.0
  • 13. Análisis Lexico y Diagramas de Transición 13 Diagramas de transición  UN DIAGRAMA DE TRANSICIONES es una colección finita de círculos, los cuales se pueden rotular para fines de referencia, conectados por flechas que reciben el nombre de ARCOS
  • 14. Análisis Lexico y Diagramas de Transición 14 Más Ejemplos DT
  • 15. Análisis Lexico y Diagramas de Transición 15 Características del DT  Cada uno de estos arcos se etiqueta con un símbolo que podría presentarse en la cadena de entrada que se analiza.  Uno de los círculos se designa con un apuntador, y representa una posición inicial.  Además, por lo menos uno de los círculos se representa como un circulo doble; estos círculos dobles designan posiciones finales del diagrama en las cuales se ha reconocido una cadena valida.
  • 16. Análisis Lexico y Diagramas de Transición 16 Características del DT  Decimos que una cadena de símbolos es aceptada por un diagrama de transiciones si los símbolos que aparecen en la cadena (de izquierda a derecha) corresponden a una secuencia de arcos rotulados que conducen del circulo designado por el apuntador a un circulo doble
  • 17. Análisis Lexico y Diagramas de Transición 17 Características del DT  Los círculos de un diagrama de transiciones representa posiciones, o estados, donde no podemos encontrar al evaluar una cadena de símbolos.  Es común llamar estados a los círculos de un diagrama de transiciones.  Él circulo de partida se llama estado inicial y los círculos dobles, estados de aceptación.
  • 18. Análisis Lexico y Diagramas de Transición 18 Estados de Aceptación  Cuál es el estado inicial?  Cuál es el estado de aceptación?  Cuál sería una cadena válida?
  • 19. Autor: Pedro Villalta https://plus.google.com/u/0/105223072803758915793/about Correos de Contacto pavillalta@gmail.com pavillalta@ugb.edu.sv Perfil Google+ Redes Sociales Sitio Web http://ingenieria-en-sistemas-informaticos.blogspot.com/ Facebook y Twitter facebook.com/pavillalta facebook.com/pavillaltaugb twitter.com/pavillalta
  • 20. Blog Educativos Comercio Electronico (E-Commerce) Compiladores e Interpretes Desarrollo de Aplicaciones Para Dispositivos Móviles Ingenieria en Sistemas Informáticos Ingenieria Web (Web Engineering) Noticias de Tecnología | Informática | Ciencia Programación Visual Basic .Net Redes de Computadoras Investigación Científica Artes Marciales, Tae Kwon Do Blogs Educativos Portafolio Profesional