domingo, 12 de abril de 2009

Diferencia entre Compilador e Interprete (de idiomas)

Puede resultarte de ayuda establecer una analogía entre compiladores e intŕrpretes de lenguajes de programación y traductores e interprétes de idiomas.
Un compilador actúa como un traductor que recibe un libro escrito en un idioma determinado (lenguaje de alto nivel) y escribe un nuevo libro que, con mayor fidelidad posible, contiene una traducción de texto original a otro idioma (código de maquina). El proceso de traducción (compilación) tiene lugar una sola vez y podemos leer el libro (ejecutar el programa) en el idioma destino (código maquina) cuantas veces queramos.

http://seodm.files.wordpress.com/2006/10/binarycode.jpg
Un intérprete de programas actúa como su homónimo en el caso de los idiomas. Supón que se imparte una conferecnia en inglés en diferentes cuidades y un interprete ofrece su traduccion simultánea al castellano. Cada ves que la conferencia es pronunicada, el intérprete deve realizar nuevamente la traduccion. Es mas, la traducción se produce sobre la marcha, frase a frase, y no de un tirón al final de la conferencia. Del mismo modo actúa el intérprete de un lenguaje de programación: traduce cada vez que ejecutamos el programa y además lo hace intrucción a intrucción.


http://miclase.files.wordpress.com/2007/05/abc.jpg

3 comentarios: