LENGUAJES Y AUTÓMATAS II
TAREA 1: REPASO
INGENIERÍA EN SISTEMAS COMPUTACIONALES
ALUMNOS:
ERICK RIVAS GOMEZ 15121210
MORELIA, MICHOACÁN
Agosto 2018
Lenguajes y Autómatas II
0.1. Tarea 1 – Repaso de Autómatas I
Es un modelo matemático que representa una máquina de estado finito. Esto quiere decir que el autómata,
después de analizar una entrada, (por lo general una cadena) nos va a indicar si ésta es válida o no lo
es, para el autómata determinado. El conjunto de entradas válidas para un autómata se denomina regex
(expresiones regulares).
Esto se aplica y es muy funcional al momento de validar entradas de texto utilizando regex, o bien delimitar
a solamente ciertos caracteres los permitidos para escribir en un cuadro de entrada de texto.
• Lenguaje: es el conjunto de palabras válidas formados por los símbolos de un alfabeto determinado.
Es un programa que toma como entrada un texto en un lenguaje fuente, y después de procesarlo, produce
un texto equivalente, pero en otro lenguaje (objeto).
1
0.1.4. ¿Cuáles son las fases de un traductor?
• Compiladores cruzados: generan código para un sistema distinto del que están funcionando.
2
• Compiladores optimizadores: realizan cambios en el código para mejorar su eficiencia, pero mante-
niendo la funcionalidad del programa original.
• Compiladores de una sola pasada: generan el código máquina a partir de una única lectura del código
fuente.
• Compiladores de varias pasadas: necesitan leer el código fuente varias veces antes de poder producir
el código máquina.
• Compiladores JIT (Just In Time): forman parte de un intérprete y compilan partes del código según
se necesitan.
3
0.1.10. Desarrolla el diagrama completo de las Fases de un traductor y des-
cribe brevemente cada uno de sus pasos.
Es una forma de representar los lenguajes regulares (finitos o infinitos) y se construye utilizando caracteres
del alfabeto sobre el cual se define el lenguaje.
Int variable = 1;
∗ Recordar que variable es TODO el alfabeto Inglés, es decir de la A a la Z (minúsculas y mayúsculas), y
con las típicas condiciones de no aceptar espacios, caracteres especiales, número al inicio pero si al final,
mayúsculas, minúsculas, guiones medios y bajos. El prefijo inicial es Int (con la I mayúscula. Finalmente
la asignación y un número entero. Recordar que un número entero puede ser positivo o negativo. También
debe aceptar una infinidad de números cero al inicio (0001).