Teoría de autómatas. Un enfoque práctico. Recortables. Thelma Cantú María Gpe. Mendoza
|
|
- Montserrat Navarrete Miranda
- hace 6 años
- Vistas:
Transcripción
1 Teoría de autómatas. Un enfoque práctico Recortables Thelma Cantú María Gpe. Mendoza
2 1.1 Búsqueda de lenguajes Alumno: 1 Nombre del lenguaje Alfabeto: Dónde se utiliza? Cuál es el beneficio para la humanidad? 2 Nombre del lenguaje Alfabeto: Dónde se utiliza? Cuál es el beneficio para la humanidad? 3 Nombre del lenguaje Alfabeto: Dónde se utiliza? Cuál es el beneficio para la humanidad? 4 Nombre del lenguaje Alfabeto: Dónde se utiliza? Cuál es el beneficio para la humanidad? 5 Nombre del lenguaje Alfabeto: Dónde se utiliza? Cuál es el beneficio para la humanidad? Teoría de autómatas. Un enfoque práctico 2
3 1.2 Ejercicios de conjuntos Alumno: Conjuntos: A = {ab, bc, cd} B = {aa, b, cc} C = {a, b, c} D = {b, d, e} E = {b, d, f} F = {a, f, g, h, i, j} G = {Edgar, Carlos, Eugenio, Alan, Marco, Jesús, Rey, Librado, Agustín} H = {Herrera, Edgar, Juárez, Martínez, Nampulá, Solís, Vidaña, González} Operaciones de conjuntos: 1. P(A) 2. P(B) 3. C D E 4. E D 5. D F C 6. C-E B-D 7. C F B 8. Determine las cadenas resultantes de *=(A B C) 9. Elabore una lista de las cadenas de A* 10. F E 11. Compruebe la ley conmutativa con los conjuntos C y D. 12. Compruebe la ley asociativa con los conjuntos D, E y F. 13. Compruebe la ley distributiva con los conjuntos D, E y F. 14. Obtenga las cadenas de *(G H) 15. Obtenga las cadenas de + (G H) RESULTADOS: Teoría de autómatas. Un enfoque práctico 3
4 1.3 Cuadro comparativo de las características de 10 lenguajes de programación de alto nivel Fecha: / / Lenguaje Aplicación Tipo de programación Lenguaje programado Otra característica Alumno: Teoría de autómatas. Un enfoque práctico 4
5 1.4 Línea de tiempo Alumno: Elabore una línea de tiempo (por décadas y generaciones) que incluya las características de los lenguajes con base en el desarrollo del hardware. Teoría de autómatas. Un enfoque práctico 5
6 1.5 Cuadro sinóptico Alumno: Elabore un cuadro sinóptico o esquema para organizar los conceptos relativos a los diferentes tipos de lenguajes de programación. Trate de ir de lo general a lo particular. Teoría de autómatas. Un enfoque práctico 6
7 1.6 Técnicas de búsqueda Alumno: Investigue (por lo menos) cinco diferentes técnicas de búsqueda. Incluya sus aplicaciones y características principales. 1 Técnica de búsqueda Aplicación Características Teoría de autómatas. Un enfoque práctico 7
8 2.1 Definición regular Alumno: Diseñe la definición regular para un lenguaje de programación en lenguaje natural (español). Nota: Defina cada una de las expresiones regulares que integran la definición regular. Teoría de autómatas. Un enfoque práctico 8
9 2.2 Definición regular de URL Alumno: Diseñe una definición regular para analizar una entrada URL (Uniform Resource Locator), es decir, la dirección de un sitio de Internet. Nota: Defina cada una de las expresiones regulares que integran la definición regular. Teoría de autómatas. Un enfoque práctico 9
10 2.3 Definición regular del RFC Alumno: Diseñe una definición regular para analizar el Registro Federal de Contribuyentes. Nota: Defina cada expresión regular que integra a la definición regular. Teoría de autómatas. Un enfoque práctico 10
11 2.4 Definición regular de CURP Alumno: Diseñe una definición regular para la clave CURP. Nota: Definir cada una de las expresiones regulares que integran la definición regular. Teoría de autómatas. Un enfoque práctico 11
12 3.1 Alfabeto Alumno: Defina el alfabeto para cada diagrama de transición de los operadores de expresiones regulares que se presentan, y describa brevemente el significado de la representación gráfica. Alternativo DT1 Descripción Alternativo DT2 Unario OP1 Unario OP2 Unario OP3 Sumario Interrogario Potenciario Expresión aritmética Teoría de autómatas. Un enfoque práctico 12
13 3.2 Matriz de transición Alumno: Diseñe la matriz de transición para cada uno de los diagramas del desprendible 3.1. Alternativo DT1: Alfabeto Estado L D del CAT Alternativo DT2: Alfabeto Estado " ' del CAT Unario OP1: Alfabeto Estado L D del CAT Unario OP2: Alfabeto Estado L D del CAT Unario OP3: Sumario: Estado Alfabeto Estado Alfabeto Interrogación: Potencia: Expresión aritmética: Teoría de autómatas. Un enfoque práctico 13
14 3.3 Elementos de definición formal de un autómata Alumno: Para cada autómata finito definido en la sección de diagramas de transición, obtenga los elementos correspondientes de la definición formal del autómata, e identifique el tipo de autómata. Q q0 F Tipo de autómata Alternativo DT1 Alternativo DT2 Unario OP1 Unario OP2 Unario OP3 Sumario Interrogación Potencia Expresión aritmética Teoría de autómatas. Un enfoque práctico 14
15 3.4 Dominio de la definición formal de autómatas AFND en AFD Alumno: Complete los elementos de la definición formal de autómatas y los diagramas de transición correspondientes, tome como base las siguientes tablas de transición de estados. 1. q0 = q0 F = {q2, q4} δ 0 1 q0 {q0, q1} {q0, q3} q1 {} {q2} q2 {q2} {q2} q3 {q4} {} q4 {q4} {q4} 2. q0 = q0 F = {q0, q3} δ a b q0 {q0} {q3, q2} q1 {q0, q2} φ q2 {q0, q1, q2} {q0, q1} q3 {q0} {q3} Teoría de autómatas. Un enfoque práctico 15
16 3.5 Conversión de AFND a AFD Alumno: Convierta cada AFND del desprendible 3.4 a AFD; desarrolle el proceso por pasos. Teoría de autómatas. Un enfoque práctico 16
17 3.6 Diagrama de transición de estados minimizados Alumno: Obtenga, de cada AFD resultante de la actividad 3.5, un diagrama de transiciones de los estados minimizados. Teoría de autómatas. Un enfoque práctico 17
18 4.1 Mapa cognitivo Alumno: Elabore un mapa cognitivo de las características y operación de las máquinas de Turing. Teoría de autómatas. Un enfoque práctico 18
19 4.2 Cuadro comparativo Alumno: Elabore un cuadro comparativo que ilustre las diferencias y semejanzas entre los autómatas finitos y las máquinas de Turing. Condición AF MT Cantidad de estados iniciales Cantidad de estados finales Problemas al aceptar la cadena Lectura de la cadena Estado de error Aceptación de la cadena Tratamiento de la cadena de entrada Movimientos adicionales Funcionalidad Teoría de autómatas. Un enfoque práctico 19
20 4.3 Diagrama de máquinas de Turing Alumno: Tomando en cuenta las propuestas siguientes, realice los diagramas de máquinas de Turing necesarios e identifique los elementos que componen la definición formal. 1. Encontrar el siguiente patrón en la cadena a partir de la primera celda: xxy. En qué situación esta máquina de Turing podría tener un problema de parada? 2. Eliminar todos los símbolos del alfabeto a partir de la celda actual y hasta encontrar un blanco; la posición final del cabezal debe ser la celda en donde inició sus cálculos. Teoría de autómatas. Un enfoque práctico 20
21 4.4 Máquinas de Turing Alumno: Diseñe máquinas de Turing compuestas para cada máquina del desprendible Encontrar el siguiente patrón en la cadena a partir de la primera celda: xxy. 2. Eliminar todos los símbolos del alfabeto a partir de la celda actual y hasta encontrar un blanco; la posición final del cabezal debe ser la celda en donde inició sus cálculos. Teoría de autómatas. Un enfoque práctico 21
22 4.5 Máquina de Turing y secuencia de configuraciones Alumno: Diseñe una máquina de Turing para cada uno de los siguientes lenguajes; determine los elementos de la definición formal y la secuencia de las configuraciones de la cadena para cada máquina. 1. L = {(xy) m z(xy) n ; m, n N + }; configuración inicial de la cinta: ΔxyxyzxyxyxyΔΔ L = { (abc1) m ; m N + }; configuración inicial de la cinta: Δabc1abc1abc1ΔΔ 3. L = {a l b m c n d ñ ; l, m, n, ñ>=2}; configuración inicial de la cinta: ΔaaaabbbccddΔΔ 4. L = {0100) n (10) m ; n, m N + }; configuración inicial de la cinta: Δ ΔΔ Teoría de autómatas. Un enfoque práctico 22
23 4.6 Programación de una máquina de Turing Alumno: Diseñe, a partir de las características siguientes, un programa que simule el comportamiento de las máquinas de Turing, incluyendo la configuración de cinta: 1. El programa proporciona un menú de operaciones básicas de las máquinas de Turing, a través del cual el usuario puede hacer elecciones para formar una máquina compuesta. 2. El usuario proporciona la cadena de entrada. 3. El usuario proporciona la posición de la celda en donde inicia los cálculos la máquina de Turing. Consideraciones para la evaluación del profesor: Cantidad de elementos en el menú de operaciones Presentación del alfabeto Presentación de la cadena mediante celdas Existe la opción para colocar el cabezal en la cinta? Visualización gráfica de la máquina Proceso por pasos de los movimientos de la máquina Movimientos del cabezal a medida que avanza la máquina de Turing Hay problema de parada? Aceptación de la cadena Teoría de autómatas. Un enfoque práctico 23
24 5.1 Diseño de un lenguaje de programación propio Alumno: Instrucción Descripción Sintaxis Argumentos Teoría de autómatas. Un enfoque práctico 24
25 Instrucción Descripción Sintaxis Argumentos Teoría de autómatas. Un enfoque práctico 25
26 Instrucción Descripción Sintaxis Argumentos Teoría de autómatas. Un enfoque práctico 26
27 Instrucción Descripción Sintaxis Argumentos Teoría de autómatas. Un enfoque práctico 27
28 Instrucción Descripción Sintaxis Argumentos Teoría de autómatas. Un enfoque práctico 28
29 Instrucción Descripción Sintaxis Argumentos Teoría de autómatas. Un enfoque práctico 29
30 Instrucción Descripción Sintaxis Argumentos Teoría de autómatas. Un enfoque práctico 30
31 Instrucción Descripción Sintaxis Argumentos Teoría de autómatas. Un enfoque práctico 31
32 Operadores Descripción Sintaxis Constantes numéricas Descripción Sintaxis Cadenas Descripción Sintaxis Comentarios Descripción Sintaxis Caracteres especiales Descripción Sintaxis Teoría de autómatas. Un enfoque práctico 32
33 Operadores Descripción Sintaxis Constantes numéricas Descripción Sintaxis Cadenas Descripción Sintaxis Comentarios Descripción Sintaxis Caracteres especiales Descripción Sintaxis Teoría de autómatas. Un enfoque práctico 33
34 Operadores Descripción Sintaxis Constantes numéricas Descripción Sintaxis Cadenas Descripción Sintaxis Comentarios Descripción Sintaxis Caracteres especiales Descripción Sintaxis Teoría de autómatas. Un enfoque práctico 34
35 Teoría de autómatas. Un enfoque práctico 35 Fecha: / / 5.2 Definición regular de un lenguaje propio Alumno: Nombre Expresión regular
36 Nombre Expresión regular Teoría de autómatas. Un enfoque práctico 36
37 Consideraciones para la evaluación del profesor: Contenido de las definiciones regulares: Símbolo inicial Evita la ambigüedad Palabras reservadas Operadores aritméticos Operadores relacionales Operadores lógicos Constantes numéricas (enteras y reales) Identificadores Comentarios Cadenas Caracteres especiales Evaluación: Teoría de autómatas. Un enfoque práctico 37
38 5.3 Diagrama tu propio lenguaje Alumno: Diagrama de transición Teoría de autómatas. Un enfoque práctico 38
39 Diagrama de transición Teoría de autómatas. Un enfoque práctico 39
40 Consideraciones para la evaluación del profesor: Contenido del diagrama de transición: Estado inicial Estados finales definidos Evita la ambigüedad Palabras reservadas Operadores aritméticos Operadores relacionales Operadores lógicos Identificadores Constantes numéricas (enteras y reales) Comentarios Cadenas Caracteres especiales Evaluación: Teoría de autómatas. Un enfoque práctico 40
41 5.4 Matriz de un lenguaje de programación propio Alumno: Nota: Realizar esta matriz en un archivo de Excel con las columnas y filas necesarias. Teoría de autómatas. Un enfoque práctico 41
42 Consideraciones para la evaluación del profesor: Contenido de la matriz de transición: Caracteres aceptados por el lenguaje Estados bien definidos Columna de tokens Tokens definidos en los estados finales Definición de las casillas vacías Palabras reservadas Operadores aritméticos Operadores relacionales Operadores lógicos Constantes numéricas (enteras y reales) Identificadores Comentarios Cadenas Caracteres especiales Evaluación: Teoría de autómatas. Un enfoque práctico 42
43 5.5 Programación de un analizador léxico propio Alumno: Nombre del programa ejecutable: Integrantes del equipo: Describa las partes en que se dividió el producto final: Especifique de qué manera fueron asignadas dichas partes entre los integrantes del equipo: Tiempo estimado de programación: Tiempo real de programación: Si hay diferencia entre ambos tiempos explique por qué: Número de líneas de programación que se compilaron: Tiempo de ejecución: Nombre del archivo de tokens resultante: Tipo de estructura de datos utilizada como tabla de símbolos: Explique por qué eligieron ese tipo de estructura de datos: Teoría de autómatas. Un enfoque práctico 43
44 Consideraciones para la evaluación del profesor: Contenido de la vista del programa: Línea a compilar Conversión simultánea a tokens Línea resultante en tokens Número de línea Despliegue de error (si es que aplica) Número de errores Genera reporte de errores incluyendo las líneas Carga como archivo el programa a compilar Evaluación: Teoría de autómatas. Un enfoque práctico 44
45 6.1 Diagrama de sintaxis Alumno: Diagrama de sintaxis Teoría de autómatas. Un enfoque práctico 45
46 Diagrama de sintaxis Teoría de autómatas. Un enfoque práctico 46
47 Consideraciones para la evaluación del profesor: Contenido del diagrama de sintaxis: Manipulación adecuada de los símbolos Argumentos bien definidos Número de instrucciones correctas Número de instrucciones incompletas Evaluación: Teoría de autómatas. Un enfoque práctico 47
48 6.2 Árbol de derivación Alumno: Árbol de derivación Teoría de autómatas. Un enfoque práctico 48
49 Árbol de derivación Teoría de autómatas. Un enfoque práctico 49
50 Consideraciones para la evaluación del profesor: Contenido del árbol de derivación: Manipulación adecuada de los símbolos Argumentos bien definidos Número de instrucciones correctas Número de instrucciones incompletas Evaluación: Teoría de autómatas. Un enfoque práctico 50
51 Teoría de autómatas. Un enfoque práctico 51 Fecha: / / 6.3 Gramática libre de contexto Alumno: Izquierdo Derecho
52 Izquierdo Derecho Teoría de autómatas. Un enfoque práctico 52
53 Consideraciones para la evaluación del profesor: Contenido de la gramática libre de contexto: Manipulación adecuada de los símbolos Argumentos bien definidos Número de instrucciones correctas Número de instrucciones incompletas Evaluación: Teoría de autómatas. Un enfoque práctico 53
54 6.4 Diagramas de flujo Alumno: Diagramas de flujo Teoría de autómatas. Un enfoque práctico 54
55 Diagramas de flujo Teoría de autómatas. Un enfoque práctico 55
56 Consideraciones para la evaluación del profesor: Contenido del diagrama de flujo: Manipulación adecuada de los símbolos Analizador recursivo descendente Soluciona diversos ejemplos Analizador recursivo ascendente Soluciona diversos ejemplos Evaluación: Teoría de autómatas. Un enfoque práctico 56
57 6.5 Programación de un analizador sintáctico propio Alumno: Nombre del programa ejecutable: Integrantes del equipo: Describa las partes en que se dividió el producto final: Especifique de qué manera fueron asignadas dichas partes entre los integrantes del equipo: Tiempo estimado de programación: Tiempo real de programación: Si hay diferencias entre ambos tiempos, explique por qué: Número de líneas de programación que se compilaron: Tiempo de ejecución: Tipo de estructura de datos utilizada como tabla de símbolos: Explique la razón por la que eligieron ese tipo de estructura de datos: Teoría de autómatas. Un enfoque práctico 57
58 Consideraciones para la evaluación del profesor: Contenido de la vista del programa: Línea a compilar Conversión simultánea de la cadena de entrada Línea resultante Número de línea Despliegue de error (si es que aplica) Número de errores Genera reporte de errores, incluyendo las líneas Carga como archivo el archivo de tokens Evaluación: Teoría de autómatas. Un enfoque práctico 58
59 7.1 Árboles de expresión Alumno: Árboles de expresión Teoría de autómatas. Un enfoque práctico 59
60 Árboles de expresión Teoría de autómatas. Un enfoque práctico 60
61 Consideraciones para la evaluación del profesor: Contenido del árbol de expresión: Conversión adecuada del árbol de derivación Argumentos bien definidos Número de instrucciones correctas Número de instrucciones incompletas Evaluación: Teoría de autómatas. Un enfoque práctico 61
62 7.2 Reglas semánticas Alumno: Izquierdo Derecho Teoría de autómatas. Un enfoque práctico 62
63 Izquierdo Derecho Teoría de autómatas. Un enfoque práctico 63
64 Consideraciones para la evaluación del profesor: Contenido de las reglas semánticas Manipulación adecuada de los símbolos Conversión adecuada Número de instrucciones correctas Número de instrucciones incompletas Evaluación: Teoría de autómatas. Un enfoque práctico 64
65 7.3 Programa tu analizador semántico Alumno: Nombre del programa ejecutable: Integrantes del equipo: Describa las partes en que se dividió el producto final: Especifique de qué manera fue asignada cada una de las partes entre los integrantes del equipo: Tiempo estimado de programación: Tiempo real de programación: Si hay diferencia entre ambos tiempos, explique por qué: Tipo de analizador que se eligió programar: 1 pasada, 2 pasadas, 3 pasadas Número de líneas de programación que se compilaron: Tiempo de ejecución: Tipo de estructura de datos utilizada como tabla de símbolos: Explique la razón por la que eligieron ese tipo de estructura de datos: Teoría de autómatas. Un enfoque práctico 65
66 Consideraciones para la evaluación del profesor: Contenido de la vista del programa: Línea a compilar Conversión simultánea de la cadena de entrada Línea resultante Número de línea Despliegue de error (si es que aplica) Número de errores Genera reporte de errores, incluyendo las líneas Carga como archivo el archivo de tokens Número de pasadas Actualización de la tabla de símbolos Conversión del archivo temporal Funcionamiento del método recursivo Contadores de instrucciones compuestas Tiempo de ejecución de cada pasada Evaluación: Teoría de autómatas. Un enfoque práctico 66
67 8.1 Diagrama de flujo de conversión a notación prefijo Alumno: Diagrama de flujo prefijo Teoría de autómatas. Un enfoque práctico 67
68 Diagrama de flujo prefijo Teoría de autómatas. Un enfoque práctico 68
69 Consideraciones para la evaluación del profesor: Contenido del diagrama de flujo: Manipulación adecuada de los símbolos Conversión exitosa Contempla el uso de los paréntesis Contempla operaciones múltiples Evaluación: Teoría de autómatas. Un enfoque práctico 69
70 8.2 Diagrama de flujo de conversión a notación postfija Alumno: Diagrama de flujo postfijo Teoría de autómatas. Un enfoque práctico 70
71 Diagrama de flujo postfijo Teoría de autómatas. Un enfoque práctico 71
72 Consideraciones para la evaluación del profesor: Contenido del diagrama de flujo: Manipulación adecuada de los símbolos Conversión exitosa Contempla el uso de los paréntesis Contempla operaciones múltiples Evaluación: Teoría de autómatas. Un enfoque práctico 72
73 8.3 Programación de un convertidor a notación prefija o postfija Alumno: Fecha: / / Nombre del programa ejecutable: Integrantes del equipo: Describa las partes en que se dividió el producto final: Especifique de qué manera fueron asignadas dichas partes entre los integrantes del equipo: Tiempo estimado de programación: Tiempo real de programación: Si hay diferencias entre ambos tiempos, explique por qué: Qué diferencia observa en cuanto a complejidad entre la programación de ambas notaciones? Número de conversiones con que se hicieron pruebas: Tiempo de ejecución: Tipo de estructura de datos utilizada: Explique la razón por la que eligieron ese tipo de estructura de datos: Teoría de autómatas. Un enfoque práctico 73
74 Consideraciones para la evaluación del profesor: Contenido de la vista del programa: Captura de la expresión aritmética Selección entre las dos notaciones Línea resultante Manejo de los paréntesis Despliegue de error (si es que aplica) Tiempo de ejecución Evaluación: Teoría de autómatas. Un enfoque práctico 74
75 8.4 Construcción de una tripleta Alumno: Triplo Dato objeto Dato fuente Operador Teoría de autómatas. Un enfoque práctico 75
76 Consideraciones para la evaluación del profesor: Contenido de las tripletas: Operaciones temporales adecuadas Conversión adecuada Número de instrucciones correctas Número de instrucciones incompletas Evaluación: Teoría de autómatas. Un enfoque práctico 76
77 8.5 Construcción de un cuádruplo Alumno: Cuádruplo Dato objeto Dato fuente 1 Dato fuente 2 Operador Teoría de autómatas. Un enfoque práctico 77
78 Consideraciones para la evaluación del profesor: Contenido de los cuádruplos: Operaciones temporales adecuadas Conversión adecuada Número de instrucciones correctas Número de instrucciones incompletas Evaluación: Teoría de autómatas. Un enfoque práctico 78
79 8.6 Programación de un convertidor a tripleta o cuádruplo Alumno: Nombre del programa ejecutable: Integrantes del equipo: Describa las partes en que se dividió el producto final: Especifique de qué manera fueron asignadas dichas partes entre los integrantes del equipo: Tiempo estimado de programación: Tiempo real de programación: Si hay diferencia entre ambos tiempos, explique por qué: Qué diferencia observa en cuanto a complejidad entre la programación de ambas técnicas? Número de conversiones con que se hicieron pruebas: Tiempo de ejecución: Tipo de estructura de datos utilizada: Explique la razón por la que eligieron ese tipo de estructura de datos: Teoría de autómatas. Un enfoque práctico 79
80 Consideraciones para la evaluación del profesor: Contenido de la vista del programa: Lectura del programa fuente Selección entre las dos técnicas Estructuras resultantes Número de instrucciones correctas Número de instrucciones incorrectas Tiempo de ejecución Evaluación: Teoría de autómatas. Un enfoque práctico 80
81 9.1 Detección de expresiones locales susceptibles de optimización Alumno: Algoritmo Teoría de autómatas. Un enfoque práctico 81
82 Algoritmo Teoría de autómatas. Un enfoque práctico 82
83 Consideraciones para la evaluación del profesor: Contenido del algoritmo: Toma como entrada los triplos o cuádruplos Detecta las expresiones locales Optimiza el código intermedio Evaluación: Teoría de autómatas. Un enfoque práctico 83
84 9.2 Diagrama de flujo de detección de expresiones locales Alumno: Expresiones locales Fecha: / / Teoría de autómatas. Un enfoque práctico 84
85 Expresiones locales Teoría de autómatas. Un enfoque práctico 85
86 Consideraciones para la evaluación del profesor: Contenido del diagrama de flujo: Manipulación adecuada de los símbolos Detección exitosa Corrección exitosa Evaluación: Teoría de autómatas. Un enfoque práctico 86
87 9.3 Programación de un detector de expresiones locales Alumno: Nombre del programa ejecutable: Integrantes del equipo: Describa las partes en que se dividió el producto final: Especifique de qué manera fueron asignadas dichas partes entre los integrantes del equipo: Tiempo estimado de programación: Tiempo real de programación: Si hay diferencia entre ambos tiempos, explique por qué: Qué diferencia observa en cuanto a complejidad entre la programación de ambas técnicas? Número de conversiones con que se hicieron pruebas: Tiempo de ejecución: Tipo de estructura de datos utilizada: Explique la razón por la que eligieron ese tipo de estructura de datos: Teoría de autómatas. Un enfoque práctico 87
88 Consideraciones para la evaluación del profesor: Contenido de la vista del programa: Lectura de tripletas o cuádruplos Modificación adecuada del código intermedio Visualización previa y posterior Número de instrucciones correctas Número de instrucciones incorrectas Tiempo de ejecución Evaluación: Teoría de autómatas. Un enfoque práctico 88
89 9.4 Detección de bucles Alumno: Algoritmo Teoría de autómatas. Un enfoque práctico 89
90 Algoritmo Teoría de autómatas. Un enfoque práctico 90
91 Consideraciones para la evaluación del profesor: Contenido del algoritmo: Toma como entrada los triplos o cuádruplos Detecta los bucles Optimiza el código intermedio Evaluación: Teoría de autómatas. Un enfoque práctico 91
92 9.5 Diagrama de flujo de detección de bucles Alumno: Diagrama de flujo de detección de bucles Teoría de autómatas. Un enfoque práctico 92
93 Diagrama de flujo de detección de bucles Teoría de autómatas. Un enfoque práctico 93
94 Consideraciones para la evaluación del profesor: Contenido del diagrama de flujo: Manipulación adecuada de los símbolos Detección exitosa Corrección exitosa Evaluación: Teoría de autómatas. Un enfoque práctico 94
95 9.6 Programa tu detector de bucles Alumno: Nombre del programa ejecutable: Integrantes del equipo: Describa las partes en que se dividió el producto final: Especifique de qué manera fueron asignadas dichas partes entre los integrantes del equipo: Tiempo estimado de programación: Tiempo real de programación: Si hay diferencia entre ambos tiempos, explique por qué: Qué diferencia observa en cuanto a complejidad entre la programación de ambas técnicas? Número de conversiones con que se hicieron pruebas: Tiempo de ejecución: Tipo de estructura de datos utilizada: Explique la razón por la que eligieron ese tipo de estructura de datos: Teoría de autómatas. Un enfoque práctico 95
96 Consideraciones para la evaluación del profesor: Contenido de la vista del programa: Lectura de tripletas o cuádruplos Modificación adecuada del código intermedio Visualización previa y posterior Número de instrucciones correctas Número de instrucciones incorrectas Tiempo de ejecución Evaluación: Teoría de autómatas. Un enfoque práctico 96
97 9.7 Detecta los GLOBALES Alumno: Algoritmo Teoría de autómatas. Un enfoque práctico 97
98 Algoritmo Teoría de autómatas. Un enfoque práctico 98
99 Consideraciones para la evaluación del profesor: Contenido del algoritmo: Toma como entrada los triplos o cuádruplos Detecta los problemas globales Optimiza el código intermedio Evaluación: Teoría de autómatas. Un enfoque práctico 99
100 9.8 Diagrama de flujo de detección de problemas globales Alumno: Expresiones globales Fecha: / / Teoría de autómatas. Un enfoque práctico 100
101 Expresiones globales Teoría de autómatas. Un enfoque práctico 101
102 Consideraciones para la evaluación del profesor: Contenido del diagrama de flujo: Manipulación adecuada de los símbolos Detección exitosa Corrección exitosa Evaluación: Teoría de autómatas. Un enfoque práctico 102
103 9.9 Programación de un detector de problemas globales Alumno: Nombre del programa ejecutable: Integrantes del equipo: Describa las partes en que se dividió el producto final: Especifique de qué manera fue asignada cada una de las partes entre los integrantes del equipo: Tiempo estimado de programación: Tiempo real de programación: Si hay diferencia entre ambos tiempos, explique por qué: Qué diferencia observa en cuanto a complejidad entre la programación de ambas técnicas? Número de conversiones con que se hicieron pruebas: Tiempo de ejecución: Tipo de estructura de datos utilizada: Explique la razón por la que eligieron ese tipo de estructura de datos: Teoría de autómatas. Un enfoque práctico 103
104 Consideraciones para la evaluación del profesor: Contenido de la vista del programa: Lectura de tripletas o cuádruplos Modificación adecuada del código intermedio Visualización previa y posterior Número de instrucciones correctas Número de instrucciones incorrectas Tiempo de ejecución Evaluación: Teoría de autómatas. Un enfoque práctico 104
105 9.10 Detecta los mirillas Alumno: Algoritmo Teoría de autómatas. Un enfoque práctico 105
106 Algoritmo Teoría de autómatas. Un enfoque práctico 106
107 Consideraciones para la evaluación del profesor: Contenido del algoritmo: Toma como entrada los triplos o cuádruplos Detecta las mirillas Optimiza el código intermedio Evaluación: Teoría de autómatas. Un enfoque práctico 107
108 9.11 Diagrama de flujo de detección de mirillas Alumno: Expresiones mirillas Teoría de autómatas. Un enfoque práctico 108
109 Expresiones mirillas Teoría de autómatas. Un enfoque práctico 109
110 Consideraciones para la evaluación del profesor: Contenido del diagrama de flujo: Manipulación adecuada de los símbolos Detección exitosa Corrección exitosa Evaluación: Teoría de autómatas. Un enfoque práctico 110
111 9.12 Programa tu detector de mirillas Alumno: Nombre del programa ejecutable: Integrantes del equipo: Describa las partes en que se dividió el producto final: Especifique de qué manera fue asignada cada una de las partes entre los integrantes del equipo: Tiempo estimado de programación: Tiempo real de programación: Si hay diferencia entre ambos tiempos, explique por qué: Qué diferencia observa en cuanto a complejidad entre la programación de ambas técnicas? Número de conversiones con que se hicieron pruebas: Tiempo de ejecución: Tipo de estructura de datos utilizada: Explique la razón por la que eligieron ese tipo de estructura de datos: Teoría de autómatas. Un enfoque práctico 111
112 Consideraciones para la evaluación del profesor: Contenido de la vista del programa: Lectura de tripletas o cuádruplos Modificación adecuada del código intermedio Visualización previa y posterior Número de instrucciones correctas Número de instrucciones incorrectas Tiempo de ejecución Evaluación: Teoría de autómatas. Un enfoque práctico 112
DATOS DE IDENTIFICACIÓN. Materia: Introducción a la teoría de los lenguajes formales Definición de alfabeto ETAPA PREINSTRUCCIONAL
Actividades ACTIVIDAD 1.1 Introducción a la teoría de los lenguajes formales Definición de alfabeto 30 minutos Búsqueda de diferentes lenguajes Desarrollar el análisis de textos y el aprendizaje autónomo.
Más detallesNombre de la asignatura: Lenguajes y Autómatas I. Créditos: Aportación al perfil
Nombre de la asignatura: Lenguajes y Autómatas I Créditos: 2 3 5 Aportación al perfil Desarrollar, implementar y administrar software de sistemas o de aplicación que cumpla con los estándares de calidad
Más detallesCapítulo 9. Introducción a los lenguajes formales. Continuar
Capítulo 9. Introducción a los lenguajes formales Continuar Introducción Un lenguaje es un conjunto de símbolos y métodos para estructurar y combinar dichos símbolos. Un lenguaje también recibe el nombre
Más detallesGeneración de Código Intermedio
Generación de Código Intermedio Programación II Margarita Álvarez Generación de código intermedio Con la generación de código intermedio se inicia la tarea de síntesis. Aunque un programa fuente se puede
Más detallesUNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA Escuela Técnica Superior de Ingeniería Informática Procesadores de Lenguajes. Tema 2.
UNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA Escuela Técnica Superior de Ingeniería Informática Procesadores de Lenguajes Tema 2 Análisis Léxico Javier Vélez Reyes jvelez@lsi.uned.es Objetivos del Tema
Más detallesNOTAS PARA LA MATERIA LENGUAJES DE PROGRAMACIÓN
NOTAS PARA LA MATERIA LENGUAJES DE PROGRAMACIÓN G r a m á t i c a s UNIVERSIDAD DE SONORA DEPARTAMENTO DE MATEMÁTICAS LICENCIATURA EN CIENCIAS DE LA COMPUTACIÓN Dra. María de Guadalupe Cota Ortiz Lenguaje
Más detallesCoordinación de Ciencias Computacionales INAOE. Teoría de Autómatas y Lenguajes Formales. Temario detallado para examen de ingreso 2012
Coordinación de Ciencias Computacionales INAOE Teoría de Autómatas y Lenguajes Formales Temario detallado para examen de ingreso 2012 1. Autómatas 1.1. Por qué estudiar la teoría de autómatas? 1.1.1. Introducción
Más detallesTeoría de Autómatas y Compiladores [ICI-445] Capítulo 2: Autómatas Finitos
Teoría de Autómatas y Compiladores [ICI-445] Capítulo 2: Autómatas Finitos Dr. Ricardo Soto [ricardo.soto@ucv.cl] [http://www.inf.ucv.cl/ rsoto] Escuela de Ingeniería Informática Pontificia Universidad
Más detallesANÁLISIS LÉXICO Ing. Ronald Rentería Ayquipa
ANÁLISIS LÉXICO Ing. Ronald Rentería Ayquipa ANALIZADOR LÉXICO (AL) El Analizador léxico (scanner), lee la secuencia de caracteres del programa fuente, caracter a caracter, y los agrupa para formar unidades
Más detallesSSL Guia de Ejercicios
1 SSL Guia de Ejercicios INTRODUCCIÓN A LENGUAJES FORMALES 1. Dado el alfabeto = {a, b, c}, escriba las palabras del lenguaje L = {x / x }. 2. Cuál es la cardinalidad del lenguaje L = {, a, aa, aaa}? 3.
Más detallesUnidad II: Análisis semántico
Unidad II: Análisis semántico Se compone de un conjunto de rutinas independientes, llamadas por los analizadores morfológico y sintáctico. El análisis semántico utiliza como entrada el árbol sintáctico
Más detallesCiencias de la Computación I
Ciencias de la Computación I Gramáticas Regulares Expresiones Regulares Gramáticas - Intuitivamente una gramática es un conjunto de reglas para formar correctamente las frases de un lenguaje - Por ejemplo,
Más detallesTema: Análisis Léxico
Compiladores. Guía 2 1 Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores Tema: Análisis Léxico Contenido En esta guía se dará a conocer la manera en que un compilador realiza el análisis
Más detallesUnidad 4. Autómatas de Pila
Unidad 4. Autómatas de Pila Una de las limitaciones de los AF es que no pueden reconocer el lenguaje {0n1n} debido a que no se puede registrar para todo n con un número finito de estados. Otro lenguaje
Más detallesMáquinas Secuenciales, Autómatas y Lenguajes. Tema 4: Expresiones Regulares. Luis Peña
Máquinas Secuenciales, Autómatas y Lenguajes Tema 4: Expresiones Regulares Luis Peña Sumario Tema 4: Expresiones Regulares. 1. Concepto de Expresión Regular 2. Teoremas de Equivalencia Curso 2012-2013
Más detallesConceptos básicos sobre gramáticas
Procesamiento de Lenguajes (PL) Curso 2014/2015 Conceptos básicos sobre gramáticas Gramáticas y lenguajes Gramáticas Dado un alfabeto Σ, un lenguaje es un conjunto (finito o infinito) de cadenas de símbolos
Más detalles16 Análisis sintáctico I
2 Contenido Recordando la estructura de un compilador Recordando el análisis léxico l análisis sintáctico Comparación con el análisis léxico l Rol del Parser Lenguajes de programación Gramáticas structura
Más detallesPROGRAMACIÓN II AÑO 2009 TALLER 3: TEORÍA DE LENGUAJES Y AUTÓMATAS
Licenciatura en Sistemas de Información PROGRAMACIÓN II AÑO 2009 TALLER 3: TEORÍA DE LENGUAJES Y AUTÓMATAS UNSE FCEyT 1. DESCRIPCIÓN Este taller consta de tres partes. En cada una de ellas se especifican
Más detallesTema 1. Introducción
Departamento de Tecnologías de la Información Tema 1 Introducción Ciencias de la Computación e Inteligencia Artificial Índice 1.1 Conceptos 1.2 Un poco de historia 1.3 Estructura de un compilador 1.4 Teoría
Más detallesPROCESADORES DE LENGUAJE EXAMEN FINAL 8-JUNIO-07
PROCESADORES DE LENGUAJE EXAMEN FINAL 8-JUNIO-07 1. En qué método de análisis sintáctico puede suceder que en la construcción del árbol de derivación de las posibles expansiones de un símbolo no terminal
Más detallesContenido. Capítulo 1. Teoría de conjuntos. 1. Capítulo 2. Lenguaje. 39. Capítulo 3. Lenguajes formales. 55
Contenido Capítulo 1. Teoría de conjuntos. 1 1.1 Conjuntos.... 3 1.1.1 Definiciones básicas.... 3 1.1.2 Operaciones sobre conjuntos.... 6 1.1.3 Diagrama de Venn.... 7 1.1.4 Álgebra de conjuntos.... 7 1.2
Más detallesEl proceso del Análisis Léxico
El proceso del Análisis Léxico El proceso de análisis léxico se refiere al trabajo que realiza el scanner con relación al proceso de compilación. El scanner representa una interfaz entre el programa fuente
Más detallesAlgoritmos. Medios de expresión de un algoritmo. Diagrama de flujo
Algoritmos En general, no hay una definición formal de algoritmo. Muchos autores los señalan como listas de instrucciones para resolver un problema abstracto, es decir, que un número finito de pasos convierten
Más detallesPROGRAMA INSTRUCCIONAL AUTOMATAS Y LENGUAJES FORMALES
UNIVERSIDAD FERMIN TORO VICE RECTORADO ACADEMICO UNIVERSIDAD FACULTAD DE INGENIERIA ESCUELA DE MANTENIMIENTO MECÁNICO ESCUELA DE TELECOMUNICACIONES ESCUELA DE ELÉCTRICA ESCUELA DE COMPUTACIÓN PROGRAMA
Más detalles1. Define que es un Autómatas finitos determinanticos y cuáles son sus elementos constitutivos (explique cada uno de ellos).
Unidad 2.- Lenguajes Regulares Los lenguajes regulares sobre un alfabeto dado _ son todos los lenguajes que Se pueden formar a partir de los lenguajes básicos?, {_}, {a}, a 2 _, por medio De las operaciones
Más detallesProcesadores de Lenguaje
Procesadores de Lenguaje Repaso TALF Cristina Tîrnăucă Dept. Matesco, Universidad de Cantabria Fac. Ciencias Ing. Informática Primavera de 2013 La Jerarquía de Chomsky Cuatro niveles de lenguajes formales
Más detallesUNIVERSIDAD TECNOLOGICA DE PEREIRA FACULTAD DE INGENIERIAS
Asignatura Código Gramática y Lenguajes Formales IS405 Créditos 4 Intensidad semanal Requisitos 6 Horas IS323 Justificación Objetivo general Dar al estudiante toda una gran base teórica sobre Ciencias
Más detallesExamen. Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación. Segundo Semestre, 2003.
Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación Examen IIC 2222 Teoría de Autómatas y Lenguajes Formales Segundo Semestre, 2003 Este examen tiene
Más detallesNOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación
UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE CIENCIAS Y SISTEMAS NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación CODIGO: 796 CREDITOS: 3 ESCUELA: Ciencias
Más detallesControla el flujo de tokens reconocidos por parte del analizador léxico. 4.2 Introduccion a las gramaticas libres de contexto y arboles de derivacion
UNIDAD IV Analisis Sintactico 4.1 Introduccion Sintaxis significa estructura del orden de las palabras en una frase. La tarea del analisis sintactico es revisar si los símbolos aparecen en el orden correcto
Más detalles1. Cadenas EJERCICIO 1
LENGUAJES FORMALES Y AUTÓMATAS CURSO 2006/2007 - BOLETÍN DE EJERCICIOS Víctor J. Díaz Madrigal y José Miguel Cañete Departamento de Lenguajes y Sistemas Informáticos 1. Cadenas La operación reversa aplicada
Más detallesMÁQUINAS DE TURING CIENCIAS DE LA COMPUTACION I 2009
MÁQUINAS DE TURING Las máquinas de Turing, así como los AF y los AP se utilizan para aceptar cadenas de un lenguaje definidas sobre un alfabeto A. El modelo básico de máquina de Turing, tiene un mecanismo
Más detallesIntroducción. Las gramáticas definen las reglas que definen a los lenguajes Las reglas pueden tener una diversa variedad de esquemas
Gramáticas Introducción Las gramáticas definen las reglas que definen a los lenguajes Las reglas pueden tener una diversa variedad de esquemas En algunos lenguajes, una sucesión de símbolos depende del
Más detallesTema: Análisis Semántico
Compiladores. Guía 7 1 Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores Tema: Análisis Semántico Contenido En esta guía se desarrollará una tabla de símbolos y se asociará al analizador
Más detallesDivisión Académica de Informática y Sistemas
Área de formación Sustantiva Profesional Nombre de la asignatura Docencia frente a grupo según SATCA Trabajo de Campo Supervisado según SATCA HCS HPS TH C HTCS TH C TC 2 2 4 4 0 0 0 4 Clave de la asignatura
Más detallesTema: Autómatas de Estado Finitos
Compiladores. Guía 2 1 Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores Tema: Autómatas de Estado Finitos Contenido En esta guía se aborda la aplicación de los autómatas en el campo de
Más detallesUnidad 4. Autómatas de Pila
Unidad 4. Autómatas de Pila Una de las limitaciones de los AF es que no pueden reconocer el lenguaje {0 n 1 n } debido a que no se puede registrar para todo n con un número finito de estados. Otro lenguaje
Más detallesESCUELA: UNIVERSIDAD DEL ISTMO
1.-IDENTIFICACIÓN ESCUELA: UNIVERSIDAD DEL ISTMO CLAVE: 3041 GRADO: ING. EN COMPUTACIÓN, CUARTO SEMESTRE TIPO DE TEÓRICA/PRÁCTICA ANTECEDENTE CURRICULAR: 3033.- OBJETIVO GENERAL Proporcionar al alumno
Más detallesSÍLABO DEL CURSO DE COMPILADORES Y LENGUAJES DE PROGRAMACIÓN
SÍLABO DEL CURSO DE COMPILADORES Y LENGUAJES DE PROGRAMACIÓN I. INFORMACIÓN GENERAL 1.1 Facultad Ingeniería 1.2 Carrera Profesional Ingeniería en Sistemas Computacionales 1.3 Departamento 1.4 Requisito
Más detallesTema 3: Gramáticas regulares. Teoría de autómatas y lenguajes formales I
Tema 3: Gramáticas regulares Teoría de autómatas y lenguajes formales I Bibliografía Hopcroft, J. E., Motwani, R., y Ullman, J. D. Introducción a la Teoría de Autómatas, Lenguajes y Computación. Addison
Más detallesEtapas en la solución de un problema
Algoritmo Conjunto de pasos, procedimientos o acciones que nos permiten alcanzar un resultado o resolver un problema. Etapas en la solución de un problema Problema Análisis profundo del problema Construcción
Más detallesTIPOS DE GRAMATICAS JERARQUIAS DE CHOMSKY
TIPOS DE GRAMATICAS JERARQUIAS DE CHOMSKY Para el estudio de este tema es necesario analizar dos tipos de gramáticas de la clasificación de Chomsky, las regulares y las independientes de contexto, las
Más detallesNOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación
UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE CIENCIAS Y SISTEMAS NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación CODIGO: 796 CREDITOS: 3 ESCUELA: Ciencias
Más detallesDEL AUTÓMATA FINITO A LA EXPRESIÓN REGULAR
DEL AUTÓMATA FINITO A LA EXPRESIÓN REGULAR Muchas veces es más fácil y seguro dibujar el DT de un AF que reconozca al lenguaje, para luego obtener la ER a partir de este autómata. Se presenta un método
Más detallesGLOSARIO 1. Qué es bit y byte? Bit: Es la unidad mínima de información. Puede ser 0 o 1. Byte: Es el conjunto de 8 bits. Ejemplo:
Cuestionario Modulo 1.1 GLOSARIO 1. Qué es bit y byte? Bit: Es la unidad mínima de información. Puede ser 0 o 1. Byte: Es el conjunto de 8 bits. Ejemplo: 1001 0110. 2. qué es Dato? Definición: Es toda
Más detallesESPECIFICACIÓN DE SÍMBOLOS
1 UNIVERSIDAD DE MAGALLANES FACULTAD DE INGENIERÍA DEPARTAMENTO DE COMPUTACIÓN ESPECIFICACIÓN DE SÍMBOLOS Elaborado el Sábado 24 de Julio de 2004 I.- COMPONENTES LÉXICOS, PATRONES Y LEXEMAS (extraído de
Más detallesCompiladores e intérpretes Introducción
Introducción Profesor: Eridan Otto Introducción Perspectiva histórica Motivación Definiciones Componentes y fases de un compilador 1 Introducción Definiciónes básicas Traductor: desde un punto de vista
Más detallesLenguajes y Compiladores Aspectos Formales (Parte 1) Compiladores
Facultad de Ingeniería de Sistemas Lenguajes y Aspectos Formales (Parte 1) 1 Aspectos Formales Los compiladores traducen lenguajes que están formalmente definidos a través de reglas que permiten escribir
Más detallesTema: Autómata de Pila
Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores 1 Tema: Autómata de Pila Contenido La presente guía aborda los autómatas de pila, y se enfoca en la aplicación que se le puede dar a estas
Más detallesFuncionamiento del A.L.
ANALIZADOR LEXICO 1 Funcionamiento del A.L. Programa fuente Analizador léxico Componente léxico Obtén el siguiente componente léxico Analizador sintáctico Tabla de símbolos 2 Maneja el fichero del programa
Más detalles300CIG007 Computabilidad y Lenguajes Formales: Autómatas Finitos
300CIG007 Computabilidad y Lenguajes Formales: Autómatas Finitos Pontificia Universidad Javeriana Cali Ingeniería de Sistemas y Computación Prof. Gloria Inés Alvarez V. Qué es un computador? Todos lo sabemos!!!
Más detallesAlgoritmo para la obtención de los estados accesibles
UNIVERSIDAD DE CÓRDOBA ESCUELA POLITÉCNICA SUPERIOR DEPARTAMENTO DE INFORMÁTICA Y ANÁLISIS NUMÉRICO INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS SEGUNDO CURSO, SEGUNDO CUATRIMESTRE TEORÍA DE AUTÓMATAS
Más detallesUNIVERSIDAD DE CÓRDOBA ESCUELA POLITÉCNICA SUPERIOR DEPARTAMENTO DE INFORMÁTICA Y ANÁLISIS NUMÉRICO INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS
UNIVERSIDAD DE CÓRDOBA ESCUELA POLITÉCNICA SUPERIOR DEPARTAMENTO DE INFORMÁTICA Y ANÁLISIS NUMÉRICO INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS SEGUNDO CURSO, SEGUNDO CUATRIMESTRE TEORÍA DE AUTÓMATAS
Más detallesIntroducción a la lingüística computacional
Introducción a la lingüística computacional César Antonio Aguilar Facultad de Lenguas y Letras 17/08/2017 Cesar.Aguilar72@gmail.com Síntesis de la clase pasada (1) En la clase anterior nos dedicamos a
Más detallesCompiladores. Análisis Sintáctico Ascendente. Adrian Ulises Mercado Martínez. Facultad de Ingeniería, UNAM. 5 de septiembre de 2013
Compiladores Análisis Sintáctico Ascendente Adrian Ulises Mercado Martínez Facultad de Ingeniería, UNAM 5 de septiembre de 2013 Adrian Ulises Mercado Martínez (FI,UNAM) Compiladores 5/07/2013 1 / 34 Índice
Más detallesSintaxis y Semántica del Lenguaje
Gramáticas y Autómatas Wilo Carpio Cáceres 110813 1 Sintaxis y Semántica del Lenguaje Wilo Carpio Cáceres 2013 Gramáticas y Autómatas Wilo Carpio Cáceres 110813 2 INTRODUCCION A LOS COMPILADORES Wilo Carpio
Más detallesTexto: Hopcroft, J. E., Motwani, R., Ullman, J.D., Introduction to Automata Theory, Languajes, and Computation. 3rd Edition. Addison Wesley, 2007.
Universidad de Puerto Rico Recinto de Mayagüez Facultad de Artes y Ciencias DEPARTAMENTO DE CIENCIAS MATEMÁTICAS Programa de Autómata y Lenguajes Formales Curso: Autómata y Lenguajes Formales Codificación:
Más detallesNuestro objetivo es demostrar que autómata = lógica Qué significa esto? Queremos encontrar una lógica que defina a los lenguajes regulares
Autómata = Lógica Nuestro objetivo es demostrar que autómata = lógica Qué significa esto? Queremos encontrar una lógica que defina a los lenguajes regulares Pero antes: Vamos a hacer un breve repaso sobre
Más detallesMODELOS DE COMPUTACION I Preguntas Tipo Test. 1. El lema de bombeo puede usarse para demostrar que un lenguaje determinado es regular.
MODELOS DE COMPUTACION I Preguntas Tipo Test Indicar si son verdaderas o falsas las siguientes afirmaciones: 1. El lema de bombeo puede usarse para demostrar que un lenguaje determinado es regular. 2.
Más detallesToda copia en PAPEL es un "Documento No Controlado" a excepción del original.
S U P E RIO R DE MISANTLA Apartado: 7.1 Copia No. Código:PD-SCD-1016 Versión No.: 02 Hoja : 2 de 12 4.- COMPETENCIAS A DESARROLLAR 4.1 Competencias Específicas: Diseña mediante el uso de reglas semánticas
Más detallesTema 4: Gramáticas independientes del contexto. Teoría de autómatas y lenguajes formales I
Tema 4: Gramáticas independientes del contexto Teoría de autómatas y lenguajes formales I Bibliografía Hopcroft, J. E., Motwani, R., y Ullman, J. D. Introducción a la Teoría de Autómatas, Lenguajes y Computación.
Más detallesUNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA Escuela Técnica Superior de Ingeniería Informática Procesadores de Lenguajes. Tema 3.
UNIVRSIDAD NACIONAL D DUCACIÓN A DISTANCIA scuela Técnica Superior de Ingeniería Informática Procesadores de Lenguajes Tema 3 Parte I Análisis Sintáctico Javier Vélez Reyes jvelez@lsi.uned.es Objetivos
Más detallesUnidad I Introducción a la programación de Sistemas. M.C. Juan Carlos Olivares Rojas
Unidad I Introducción a la programación de Sistemas M.C. Juan Carlos Olivares Rojas Agenda 1.1 Qué es y que estudia la programación de sistemas? 1.2 Herramientas desarrolladas con la teoría de programación
Más detallesTema 5. Análisis semántico
Departamento de Tecnologías de la Información Tema 5 Análisis semántico Ciencias de la Computación e Inteligencia Artificial Índice 5.1 Características del análisis semántico 5.2 Gramáticas atribuidas
Más detallesTema 1.4. Un lenguaje mínimo y su procesador: El lenguaje objeto y la máquina virtual
Tema 1.4. Un lenguaje mínimo y su procesador: El lenguaje objeto y la máquina virtual Profesor Federico Peinado Elaboración del material José Luis Sierra Federico Peinado Ingeniería en Informática Facultad
Más detallesTema 2 Conceptos básicos de programación. Fundamentos de Informática
Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis
Más detallesLas Etapas de la Compilación
Las de la Compilación El en la Compilación Universidad de Cantabria Outline 1 El Problema 2 Las y el Qué pasos son necesarios dar para hallar la estructura de un programa? En qué pasos podemos dividirlos
Más detallesUnidad 2. Introducción Lenguajes y Compiladores
Unidad 2 Introducción Lenguajes y Compiladores Principal material bibliográfico utilizado Compiladores Principios, técnicas y herramientas. Aho y Ullman. Addison Wesley. www.jorgesanchez.net www.iqcelaya.itc.mx/~vicente/programacion/tradcomp.pdf
Más detallesDiseño de Compiladores I. Estructura General de un Compilador
Diseño de Compiladores I Estructura General de un Compilador PROGRAMA FUENTE COMPILADOR SALIDA Mensajes de Error 2 Un compilador es un programa que traduce un programa escrito en lenguaje fuente y produce
Más detallesLENGUAJES Y GRAMÁTICAS
LENGUAJES Y GRAMÁTICAS Orlando Arboleda Molina Escuela de Ingeniería de Sistemas y Computación de La Universidad del Valle 20 de septiembre de 2008 Contenido Lenguajes y Gramáticas Gramáticas Gramáticas
Más detallesÁrea: INFORMÁTICA. Saber- Saber: Identificar DFD como herramienta para escribir los algoritmos de forma lógica.
Guía No: 2 Subdirección de Educación Departamento de Educación Contratada Colegio CAFAM Bellavista CED GUIA DE APRENDIZAJE Docente: Luz del Carmen Barrera Área: INFORMÁTICA Fecha: II BIMESTRE 2014 Grado:
Más detallesÍNDICE UNIDAD 2: GENERACION DE CODIGO INTERMEDIO
ÍNDICE UNIDAD 2: GENERACION DE CODIGO INTERMEDIO 2. NOTACIONES 3 2.. PREFIJA.4 2..2 INFIJA....4 2.2.3 POSTFIJA.. 5 2.2 REPRESENTACIONES DE CÓDIGO INTERMEDIO....5 2.2. NOTACIÓN POLACA. 7 2.2.2 CÓDIGO P....8
Más detallesPontificia Universidad Católica del Ecuador
1. DATOS INFORMATIVOS: MATERIA O MÓDULO: COMPILADORES E INTERPRETES CÓDIGO: 10730 CARRERA: NIVEL: SISTEMAS QUINTO No. CRÉDITOS: 4 CRÉDITOS TEORÍA: 4 CRÉDITOS PRÁCTICA: - SEMESTRE / AÑO ACADÉMICO: 2 / 2010
Más detallesCiencias de la Computación I
Ciencias de la Computación I Autómatas Finitos No Determinísticos Minimización de Autómatas Finitos Determinísticos Agosto 2007 Autómatas Finitos Determinísticos Para cada estado y para cada símolo se
Más detallesIntroducción a la Teoría de Autómatas, Lenguajes y Computación
Introducción a la Teoría de Autómatas, Lenguajes y Computación Gustavo Rodríguez Gómez y Aurelio López López INAOE Propedéutico 2010 1 / 53 Capítulo 2 Autómatas Finitos 2 / 53 1 Autómatas Finitos Autómatas
Más detallesCAPITULO 2: LENGUAJES
CAPITULO 2: LENGUAJES 2.1. DEFINICIONES PREIAS SIMBOLO: Es una entidad indivisible, que no se va a definir. Normalmente los símbolos son letras (a,b,c,.., Z), dígitos (0, 1,.., 9) y otros caracteres (+,
Más detallesUn. VI. Generador de código intermedio.
Un. VI. Generador de código intermedio. La administración de la memoria se da en esta etapa. Se debe considerar tanto la memoria estática como dinámica, y en esta se utilizan generalmente pilas. Los lenguajes
Más detallesTema 1: Introducción. Teoría de autómatas y lenguajes formales I
Tema 1: Introducción Teoría de autómatas y lenguajes formales I Bibliografía Hopcroft, J. E., Motwani, R., y Ullman, J. D. Introducción a la Teoría de Autómatas, Lenguajes y Computación. Addison Wesley.
Más detallesAnálisis léxico. Formalización y desarrollo. Procesadores de Lenguajes. Ingeniería Técnica superior de Ingeniería Informática
Procesadores de Lenguajes Ingeniería Técnica superior de Ingeniería Informática Departamento de Lenguajes y Sistemas informáticos Análisis léxico Formalización y desarrollo Javier Vélez Reyes jvelez@lsi.uned.es
Más detallesTÍTULO: MATEMÁTICA DISCRETA Y LÓGICA Disponibilidad
TÍTULO: MATEMÁTICA DISCRETA Y LÓGICA Disponibilidad Calculo proposicional 1 Argumentos y proposiciones lógicas 1 Algunos argumentos lógicos importantes 2 Proposiciones 4 Conexiones lógicas 5 Negación (tabla)
Más detallesAnálisis semántico Tabla de símbolos, chequeo de tipos y representaciones internas
Análisis semántico Tabla de símbolos, chequeo de tipos y representaciones internas Análisis semático c 2001 José Fortes Gálvez p.1 Análisis?... semántico? La semántica corresponde al significado asociado
Más detallesLenguajes y Compiladores Análisis Sintáctico Parte I. Teoría Lenguajes 1
Facultad de Ingeniería de Sistemas Lenguajes y Compiladores Análisis Sintáctico Parte I 1 Introducción El analizador sintáctico recibe una secuencia de tokens y decide si la secuencia está correcta o no.
Más detallesMATERIA: INTRODUCCIÓN A LA INFORMÁTICA
PRUEBAS DE ACCESO PARA MAYORES DE 25 Convocatoria 2013-2014 MATERIA: INTRODUCCIÓN A LA INFORMÁTICA Notas informativas: No se admiten contestaciones a lápiz. Se descontará 0,5 puntos por cada 5 faltas de
Más detallesJohn Venn Matemático y filósofo británico creador de los diagramas de Venn
Georg Cantor Matemático Alemán creador de la teoría de conjuntos John Venn Matemático y filósofo británico creador de los diagramas de Venn August De Morgan Matemático ingles creador de leyes que llevan
Más detallesSintaxis y Semántica. Tema 3. Sintaxis y Semántica. Expresiones y Lenguajes Regulares. Dr. Luis A. Pineda ISBN:
Tema 3 Expresiones y Lenguajes Regulares Dr Luis A Pineda ISBN: 970-32-2972-7 Sintaxis y Semántica En us uso normal, las expresiones lingüística hacen referencia a objetos individuales, así como a sus
Más detallesTEORIA DE AUTOMATAS.
TEORIA DE AUTOMATAS. RELACION DE PROBLEMAS II.. Construir un AFND capaz de aceptar una cadena u {, }, que contenga la subcadena. Construir un AFND capaz de aceptar una cadena u {, }, que contenga la subcadena.
Más detallesCompiladores: Análisis Sintáctico. Pontificia Universidad Javeriana Cali Ingenieria de Sistemas y Computación Prof. Gloria Inés Alvarez V.
Compiladores: Análisis Sintáctico Pontificia Universidad Javeriana Cali Ingenieria de Sistemas y Computación Prof. Gloria Inés Alvarez V. Sintaxis Define la estructura del lenguaje Ejemplo: Jerarquía en
Más detallesINAOE. Expresiones Regulares. Operadores y Operandos. Equivalencia de Lenguajes de FA y Lenguajes RE. Leyes Algebraicas de las. Expresiones Regulares
INAOE (INAOE) 1 / 52 Contenido 1 2 3 4 (INAOE) 2 / 52 Es un equivalente algebraico para un autómata. Utilizado en muchos lugares como un lenguaje para describir patrones en texto que son sencillos pero
Más detallesPrincipios de Computadoras II
Departamento de Ingeniería Electrónica y Computadoras Operadores y Expresiones rcoppo@uns.edu.ar Primer programa en Java 2 Comentarios en Java Comentario tradicional (multi-línea) Comentario de línea Comentario
Más detalles10 Análisis léxico VI Compiladores - Profr. Edgardo Adrián Franco Martínez
2 Contenido Clasificación de los autómatas finitos Autómata finito no determinista (AFND) Autómata finito determinista (AFD) Teorema sobre la transformación de AFND en AFD Transformación de una expresión
Más detallesCampos Fecha de elaboración: 28 de Mayo de 2010 Fecha de última actualización:
PROGRAMA DE ESTUDIO Programa Educativo: Área de Formación : Licenciatura en Sistemas Computacionales Integral Profesional Compiladores Horas teóricas: 2 Horas prácticas: 2 Total de Horas: 4 Total de créditos:
Más detallesPROGRAMA DE LABORATORIO SECCIÓN: ÁREA A LA QUE PERTENECE: POS-REQUISITO: AUXILIAR:
UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERÍA ESCUELA DE CIENCIAS PROGRAMA DE LABORATORIO CÓDIGO: 777 CRÉDITOS: 4 NOMBRE CURSO: ESCUELA: PRE-REQUISITO: Organización de Lenguajes y Compiladores
Más detallesGUIA EXAMEN FINAL/EXTRAORDINARIO
INSTITUTO SAN ANGEL DEL SUR ESCUELA NACIONAL PREPARATORIA INCORPORADA A LA UNAM CLAVE 1261 CICLO 2012-2013 Nombre del profesor: Ing. Jorge Padilla Gutiérrez Asignatura: INFORMATICA V GUIA EXAMEN FINAL/EXTRAORDINARIO
Más detallesIntroducción a la Programación
Introducción a la Programación Fundamentos de Programación Ingeniería Informática en Sistemas de Información Alicia Troncoso 1 Contenido l Introducción l Mi primer programa l Etapas a seguir en la programación
Más detallesAnalizador Sintáctico RECURSIVO
Compiladores 1 Argueta Cortes Jairo I. Universidad Nacional Autónoma de México Facultad de Ingeniería Compiladores Grupo 1 Analizador Sintáctico RECURSIVO ALUMNOS: ARGUETA CORTES JAIRO I. MENDOZA GAYTAN
Más detallesContenido. Capítulo I Sistemas numéricos 2. Capítulo II Métodos de conteo 40
CONTENIDO v Contenido Contenido de la página Web de apoyo... xi Página Web de apoyo... xvii Prefacio... xix Capítulo I Sistemas numéricos 2 1.1 Introducción... 4 1.2 Sistema decimal... 5 1.3 Sistemas binario,
Más detallesProgramación I Otoño 2017 FCFM - BUAP
1. Introducción a la programación Programación I Otoño 2017 FCFM - BUAP Contenido a) Computadora: definición, organización física y funcional b) Representación de la información en las computadoras: elementos
Más detallesNOMBRE DEL CURSO: Organización de Lenguajes y Compiladores 2 CÓDIGO: 781 CRÉDITOS: 5 ÁREA A LA QUE PERTENECE:
UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERÍA ESCUELA DE INGENIERÍA EN CIENCIAS Y SISTEMAS NOMBRE DEL CURSO: Organización de Lenguajes y Compiladores 2 CÓDIGO: 781 CRÉDITOS: 5 ESCUELA:
Más detallesPrograma de la asignatura Curso: 2008 / 2009 AUTÓMATAS Y LENGUAJES FORMALES (1314)
Programa de la asignatura Curso: 2008 / 2009 AUTÓMATAS Y LENGUAJES FORMALES (1314) PROFESORADO Profesor/es: CÉSAR IGNACIO GARCÍA OSORIO - correo-e: cgosorio@ubu.es FICHA TÉCNICA Titulación: INGENIERÍA
Más detallesINTRODUCCIÓN A COMPILADORES Y LENGUAJES FORMALES LENGUAJES FORMALES
Todos los derechos de propiedad intelectual de esta obra pertenecen en exclusiva a la Universidad Europea de Madrid, S.L.U. Queda terminantemente prohibida la reproducción, puesta a disposición del público
Más detalles