CiscoGT

Compilación Informática

El programa escrito en un lenguaje de programación (fácilmente comprensible por el programador) es llamado programa fuente y no se puede ejecutar directamente en una computadora. La opción más común es compilar el programa obteniendo un módulo objeto, aunque también puede ejecutarse en forma más directa a través de un intérprete informático.


El código fuente del programa se debe someter a un proceso de traducción para convertirlo a lenguaje máquina o bien a un código intermedio, generando así un módulo denominado "objeto". A este proceso se le llama compilación.

Traducción de lenguajes de computación

La implementación de un lenguaje es la que provee una manera de que se ejecute un programa para una determinada combinación de software y hardware.

Existen básicamente 2 maneras de implementar un lenguaje: 
  • Compilación.
  • Interpretación.

Compilación 

Es la traducción a un código que pueda utilizar la máquina. Los programas traductores que pueden realizar esta operación se llaman compiladores. Éstos, como los programas ensambladores avanzados, pueden generar muchas líneas de código de máquina por cada proposición del programa fuente.


Interpretación 

Un intérprete es como un compilador, solo que la salida es una ejecución. El programa de entrada se reconoce y ejecuta a la vez. No se produce un resultado físico (código máquina) sino lógico (una ejecución).



Además de que la traducción optimiza el programa acercándolo a la máquina, los lenguajes interpretados tienen la característica de que permiten construir programas que se pueden modificar a sí mismos.


A continuación, un programa intérprete, almacenado en el sistema operativo del disco, o incluido de manera permanente dentro de la máquina, convierte cada proposición del programa fuente en lenguaje de máquina conforme vaya siendo necesario durante el procesamiento de los datos. El código objeto no se graba para utilizarlo posteriormente. La siguiente vez que se utilice una instrucción, se la deberá interpretar otra vez y traducir a lenguaje máquina.




Por ejemplo, durante el procesamiento repetitivo de los pasos de un ciclo o bucle, cada instrucción del bucle tendrá que volver a ser interpretada en cada ejecución repetida del ciclo, lo cual hace que el programa sea más lento en tiempo de ejecución (porque se va revisando el código en tiempo de ejecución) pero más rápido en tiempo de diseño (porque no se tiene que estar compilando a cada momento el código completo).


El intérprete elimina la necesidad de realizar una compilación después de cada modificación del programa cuando se quiere agregar funciones o corregir errores; pero es obvio que un programa objeto compilado con antelación deberá ejecutarse con mucha mayor rapidez que uno que se debe interpretar a cada paso durante una ejecución del código. Por ello es de suma importancia conocer el significado real de Lenguaje en informática, en ese caso es un conjunto de símbolos junto a un conjunto de reglas para combinar dichos símbolos que se usan para expresar programas.



Estos programas se traducen después a un lenguaje máquina (en binario) a través de un compilador. El método de escritura de un programa está muy ligado al lenguaje de programación elegido, ya que existen muchos tipos distintos. Además, el compilador debe coincidir con el lenguaje elegido: cada lenguaje de programación tiene su propio compilador (excepto los lenguajes interpretados). 


En términos generales, el programa es un simple archivo de texto (escrito usando un procesador o editor de texto), llamado archivo fuente). El archivo fuente contiene líneas de programa llamadas código fuente. En definitiva, los lenguajes de programación fueron creados debido a la dificultad que había para trabajar en código binario o código objeto, teniendo un código fuente, se puede traducir sin mayor dificultad en cualquier computador por un compilador.




No hay comentarios.:

Con tecnología de Blogger.