Software de Sistema y Aplicación: Lenguajes y Procesos de Compilación

Clasificado en Informática

Escrito el en español con un tamaño de 2,97 KB

Software de Sistema y Aplicación

Software de Sistema: Se enfoca en hacer que la computadora entienda lo que el usuario quiere.

Software de Aplicación: Son los programas que se especializan en una tarea en especial.

Lenguajes

Lenguaje: Forma que tienen las entidades para comunicarse entre sí.

  • Natural: Es utilizado por las personas.
  • Artificial: Puede ser usado para controlar el comportamiento de una máquina.

Proceso de Comunicación

Proceso de la Comunicación: Emisor, receptor, código, mensaje, canal, ruido.

Traductores, Ensambladores, Cargadores, Intérpretes y Compiladores

Traductor: Entidad que recibe un mensaje con cierto lenguaje y lo transforma a otro.

Ensamblador: Traduce un programa escrito en lenguaje ensamblador y produce código máquina.

  • Residente: Siempre está en la memoria.
  • 1ª pasada: Lee el programa en lenguaje ensamblador en busca de identificadores a los cuales almacena en una tabla de símbolos y asigna una dirección a partir del 0.
  • 2ª pasada: Realiza la traducción, cambiando los mnemónicos de las operaciones, las variables por su dirección y las constantes por su valor binario.

Cargador: Programa que toma como entrada a otro programa en lenguaje de máquina re-localizable y produce como salida un programa en lenguaje de máquina absoluto.

Intérprete: Es aquel programa que analiza y ejecuta programas sin generar evidencia (código).

Compilador: Tiene varias etapas: análisis léxico, sintáctico, semántico, generador de código intermedio, optimizador de código, generador de código objeto, administración de la tabla de símbolos, detección y manejo de errores.

Etapas de la Compilación

Análisis Léxico: Lee caracteres de entrada, los reconoce y genera una secuencia de componentes léxicos.

Análisis Sintáctico: Dice si lo leído es una cadena válida de acuerdo con la gramática del lenguaje.

Análisis Semántico: Se encarga de darle sentido correcto a una expresión.

Optimización de Código: Hace el código intermedio aún más sencillo.

Generación de Código Objeto: Genera un programa que puede ser entendido fácilmente por la máquina.

Tabla de Símbolos: Es una estructura de datos que contiene un registro por cada identificador en los campos para sus atributos.

Detección y Manejo de Errores: Se deben tratar de alguna forma los errores para poder continuar la compilación.

Código Interno: Es una representación intermedia del programa fuente que debe ser fácil de producir y traducir.

Entradas relacionadas: