Actividad 1.3

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 5

INSTITUTO TECNOLOGICO DE FRONTERA

COMALAPA

ASIGNATURA: LENGUAJES Y AUTONOMAS I

PROFESOR: BERNARDO VELASCO


VELAZQUEZ

TAREA: ACTIVIDAD 1.3 – RESUMEN Y


DIAGRAMA

ALUMNO: ARELI BRAVO

NUMERO DE CONTROL: 211260071

SEMESTRE: 6

CARRERA: INGENIERA EN SISTEMAS


COMPUTACIONALES.

FECHA: 01/02/2024

FRONTERA COMALAPA, CHIAPAS, MEXICO.


FASES DE UN COMPILADOR
CONCEPTOS PREVIOS
Compilador
Es un programa traductor cuya función es traducir (compilar) un programa fuente
escrito en algún lenguaje de alto nivel a lenguaje máquina. Este programa traducido
o programa objeto, normalmente es guardado en memoria secundaria en forma
ejecutable y es cargado a memoria principal cada vez que requiera ser ejecutado.
Intérprete
Al igual que el compilador, el intérprete traduce un programa fuente escrito en algún
lenguaje de alto nivel, pero con la diferencia que cada instrucción es ejecutada
inmediatamente, sin generar un programa en lenguaje de máquina.
En general la compilación es un proceso más eficiente que la interpretación. Esto
se debe a que las sentancias dentro de un ciclo deben ser reinterpretadas cada vez
que se ejecutan por un intérprete. En cambio con un compilador, cada sentencia es
traducida a lenguaje de máquina sólo una vez.
Lenguaje de Máquina
Es un lenguaje que trabaja sin símbolos y hace referencia a las direcciones reales
de memoria y los códigos binarios de las instrucciones. Este lenguaje interactúa
Siguiente
Instrucción
Apunte de Compiladores Fases de un Compilador directamente con el hardware y
constituye el nivel más bajo de programación. No se utiliza directamente como
lenguaje para desarrollo de aplicaciones.
Lenguajes de Alto Nivel
Los lenguajes de alto nivel o lenguajes de tercera generación fueron los más usados
durante las décadas pasadas para el desarrollo de programas o softwares de
aplicación. Ejemplos de estos lenguajes son el COBOL, PASCAL, BASIC y C entre
otros. Su principal característica es que una instrucción codificada en estos
lenguajes equivale a varias instrucciones en lenguaje máquina. Los programas
escritos en estos lenguajes requieren ser traducidos (compilados) a lenguaje
máquina.

3.
Lenguajes de Orientación a Objetos
Son lenguajes desarrollados a partir de los noventa y en la actualidad son los más
usados para el desarrollo de programas o software de aplicación. Su característica
principal es que el desarrollo de un problema se focaliza en los objetos que
participan en él, asignándoles a estos atributos y métodos que interactuán con los
demás, produciendo un intercambio fluido de información. Ejemplos de estos
lenguajes son C++, Visual Basic y Java.

Archivos de Programa
Los Archivos de Programa contienen instrucciones para el computador. Los
programas pueden estar en lenguaje fuente (lenguaje de origen en que fue escrito
por el programador) o en lenguaje de máquina (ejecutable). Los programas escritos
en lenguaje fuente son archivos de tipo texto (ASCII). Las características de este
tipo de archivo son
• Permiten escribir datos de cualquier tipo (enteros, punto flotante, carácter).
• Se dividen en líneas (como la pantalla del computador).
• Existe un carácter de control “\n” (se lee backslash n) que marca el fin de
línea.
• Son recuperables por cualquier editor.
• Se pueden visualizar desde las líneas de comando de cualquier
• Sistema Operativo. En DOS se puede observar su contenido a través del
comando TYPE.
SISTEMA DE PROCESAMIENTO DE UN LENGUAJE
Además de un compilador se necesitan otros programas para crear un programa
objeto ejecutable. Un preprocesador sirve para reunir los módulos de un programa
escrito en varios archivos diferentes (por ejemplo los archivos de inclusión indicados
en las sentencias #include en C) y/o expandir las macros del lenguaje (por ejemplo
las constantes simbólicas de las sentencias #define en C). El programa objeto
puede requerir procesamiento adicional antes de poderlo ejecutar. Por ejemplo un
código ensamblador debe ser traducido a código de máquina y después se enlaza
a algunas rutinas de biblioteca (como los códigos de las funciones printf() y scanf()
en C) para producir el código que realmente se ejecuta.
- FASES DE UN COMPILADOR
Durante la Compilación de un Programa se realizan las siguientes fases:
Preprocesamiento
Transformaciones al Archivo Fuente, previas a la Compilación.
Análisis Léxico
Reconocimiento de los Elementos del Lenguaje.
Análisis Sintáctico
Reconocimiento de la Estructura del Lenguaje.
Análisis Semántico
Reconocimiento de la coherencia de la Entrada.
Generación de Código Intermedio
Transformación de la Entrada en una representación de código intermedio para una
máquina abstracta.
Optimización de Código
Mejoras a la representación intermedia que resulten en un código más rápido de
ejecutar.
Generación de Código
Transformación del código intermedio en código objeto.
Depuración
Reconocimiento de Errores.
Administración de la Tabla de Símbolos
Reconocimiento de los nombres de los identificadores utilizados en la Entrada y sus
diferentes atributos.
Estas fases no son en estricto rigor secuenciales, sino que los módulos que las
implementan interactúan durante el proceso de compilación, complementando sus
tareas, unos con otros. Sin embargo, a modo didáctico se plantea un esquema
secuencial de fases, lo que permitirá el estudio de cada módulo en forma
independiente.

También podría gustarte