Automatas finitos

9,673
-1

Published on

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
9,673
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
203
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Automatas finitos

  1. 1. Autómatas Finitos <ul><li>Generalidades, relación con lenguajes regulares, ejemplos y aplicaciones </li></ul>Por: Oscar Eduardo Sánchez Garcia.
  2. 2. 1. Introducción
  3. 3. Construcción de compiladores Teoría de Lenguajes Formales y Autómatas Matemáticas
  4. 5. Análisis Lexicográfico Análisis Sintáctico Análisis Semántico Optimización Preparación para la generación de código Generación de código Fases del Compilador 1 1 Fases del Compilador según Karen A. Lemone Autómatas Finitos
  5. 6. 2. Autómatas Finitos - AF
  6. 7. 2.1 Ejemplo 1 de AF Estados Estado Inicial Estados finales Transiciones Acepta o rechaza palabras
  7. 8. ¿Acepta bcc ? 1)
  8. 9. ¿Acepta bcc ? Sí 1)
  9. 10. ¿Acepta ab ? 2)
  10. 11. ¿Acepta ab? Sí 2)
  11. 12. ¿Acepta bccc? 3)
  12. 13. ¿Acepta bccc? No 3)
  13. 14. ¿Acepta bca 5 c ? 4) Nota: bc a 5 c = bc aaaaa c
  14. 15. ¿Acepta bca 5 c? Sí 4) Nota: bc a 5 c = bc aaaaa c
  15. 16. ¿Acepta bd 4 ? 5)
  16. 17. ¿Acepta bd 4 ? Sí 5)
  17. 18. ¿Acepta abc ? 6)
  18. 19. ¿Acepta abc? No 6)
  19. 20. 2.2 Ejemplo 2 de AF
  20. 21. Acepta: 42.7
  21. 22. Acepta: .325
  22. 23. Acepta: 42.7 .325 3.14159 23.45 El autómata representa los números reales sin signo en notación normal
  23. 24. 3. Aplicaciones
  24. 25. 3. Autómatas y lenguajes de programación de computadores <ul><ul><li>For </li></ul></ul><ul><ul><li>If </li></ul></ul><ul><ul><li>While </li></ul></ul><ul><ul><li>Do while </li></ul></ul><ul><ul><li>expresiones </li></ul></ul>Identificadores Enteros Reales Operadores Cadenas de caracteres Autómata Finito no determinista Autómata de pila no determinista Análisis léxico Análisis sintáctico
  25. 26. <ul><li>Aplicaciones que requieren análisis sintáctico </li></ul><ul><li>Compilador para un computador de automatización industrial </li></ul><ul><li>Herramienta de consulta de bases de datos distribuidas </li></ul><ul><li>Creación de un motor de base de datos relacional </li></ul><ul><li>Creación de un motor de base de datos OO (Base de objetos) y su lenguaje de consulta (OQL) </li></ul><ul><li>Simulador robótico con lenguaje de programación para robots </li></ul><ul><li>Generador de analizador sintáctico (YACC, JAVACC) </li></ul>Investigación y desarrollo
  26. 27. <ul><li>Bibliografía </li></ul><ul><li>KELLY, Dean. Teoría de Autómatas y Lenguajes Formales. Prentice Hall. </li></ul><ul><li>BRENA, Ramón. Autómatas y Lenguajes. Tec. Monterrey. 2003. Libro electrónico disponible en http://lizt.mty.itesm.mx/~rbrena/AyL.html </li></ul><ul><li>ISASI VIÑUELA, Pedro ;MARTÍNEZ FERNANDEZ, Paloma; BORRAJO MILLÁN, Daniel. Lenguajes, Gramáticas y Autómatas; Un enfoque práctico. Editorial Addison-Wesley. </li></ul><ul><li>HOPCROFT Y ULLMAN. Introducción a la Teoría de Autómatas, Lenguajes y Computación. Editorial Cecsa. </li></ul>

×