INTRODUCCIÓN A LOS LENGUAJES FORMALES
por Reyes hernandez
1. Alfabetos
1.1. Es un conjunto no vacío con una cantidad conocida de símbolos (imágenes, letras, números).
2. Compilador
2.1. Es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje, generando un programa que la máquina será capaz de interpretar.
2.2. Fases
2.2.1. Programa fuente
2.2.2. Analizador léxico
2.2.3. Analizador sintáctico
2.2.4. Analizador semántico
2.2.5. Generador de código intermedio
2.2.6. Optimizador de código
2.2.7. Generador de código
2.2.8. Programa objeto
3. Cadenas
3.1. Es la secuencia de más de un simbolo que pertenecen a un alfabeto en específico.
3.2. Operaciones:
3.2.1. Concatenación
3.2.1.1. Sea X y W una cadena, la concatenación seria XW o WX
3.2.2. Igualdad
3.2.2.1. Se realiza la comparación de cada uno de los caracteres de las mismas posiciones, si uno es diferente del otro no se cumple la igualdad.
3.2.3. Inversa o traspuesta
3.2.3.1. La cadena se escribe empezando desde el ultimo carácter hasta el primero, generando una nueva cadena.
4. Lenguajes
4.1. Un lenguaje es un conjunto de cadenas, todas ellas seleccionadas de un alfabeto.
4.2. Operaciones
4.2.1. - Concatenación - Unión - Intersección - Cerradura de kleene - Cerradura positiva - Diferencia - Complemento - Inversa