Anda di halaman 1dari 3

Traductor.

Un traductor es cualquier programa que toma como entrada un texto escrito en un lenguaje, llamado fuente y da como salida otro texto en un lenguaje, denominado objeto.

En el caso de que el lenguaje fuente sea un lenguaje de programacin de alto nivel y el objeto sea un lenguaje de bajo nivel (ensamblador o cdigo de mquina), a dicho traductor se le denomina compilador. Un ensamblador es un compilador cuyo lenguaje fuente es el lenguaje ensamblador. Un intrprete no genera un programa equivalente, sino que toma una sentencia del programa fuente en un lenguaje de alto nivel y la traduce al cdigo equivalente y al mismo tiempo lo ejecuta. Histricamente, con la escasez de memoria de los primeros ordenadores, se puso de moda el uso de intrpretes frente a los compiladores, pues el programa fuente sin traducir y el intrprete juntos daban una ocupacin de memoria menor que la resultante de los compiladores. Por ello los primeros ordenadores personales iban siempre acompaados de un intrprete de BASIC (Spectrum, Commodore VIC-20, PC XT de IBM, etc.). La mejor informacin sobre los errores por parte del compilador as como una mayor velocidad de ejecucin del cdigo resultante hizo que poco a poco se impusieran los compiladores. Hoy en da, y con el problema de la memoria prcticamente resuelto, se puede hablar de un gran predominio de los compiladores frente a los intrpretes, aunque intrpretes como los incluidos en los navegadores de Internet para interpretar el cdigo JVM de Java son la gran excepcin.

Tipos de Traductores de Lenguajes de Programacin:


Intrprete: lenguaje de alto-nivel a lenguaje de mquina/intermedio. Compilador: lenguaje de alto-nivel a lenguaje de mquina/intermedio.

Miscelneos: Ensamblador y Macro-ensamblador: lenguaje de bajo nivel a lenguaje de mquina. Decompiler, Desensamblador: Traduce de bajo nivel a un lenguaje de alto nivel Preprocesador: Asistente del compilador para incluir archivos, macros, etc. Traductor Inter-Lenguaje: traduce de un lenguaje de alto-nivel a otro de alto-nivel. Mquina Virtual: lenguaje intermedio traducido a lenguaje de mquina

Diferencia entre compilador y traductor?


El compilador verifica que la sintaxis (forma de usar) de los comandos y variables en un lenguaje sea correcto. Y el traductor transcribe las instrucciones a un lenguaje que usa la computadora. Aunque un ejemplo no muy bueno sera el escribir un libro o revista , hay un editor ( que equivale al compilador ) que checa que las oraciones sean coherentes ( desafortunadamente en realidad no hay en computacin algo que cheque la redaccin : haga lo ms eficiente las instrucciones ) , y habra otra persona encargada( equivale al traductor ) de colocar cada letra para la impresin .

Compilador:
Un compilador es un programa informtico que traduce un programa escrito en un lenguaje de programacin a otro lenguaje de programacin, generando un programa equivalente que la mquina ser capaz de interpretar. Usualmente el segundo lenguaje es lenguaje de mquina, pero tambin puede ser un cdigo intermedio (bytecode), o simplemente texto. Este proceso de traduccin se conoce como compilacin.

Un compilador es un programa que permite traducir el cdigo fuente de un programa en lenguaje de alto nivel, a otro lenguaje de nivel inferior (tpicamente lenguaje de mquina). De esta manera un programador puede disear un programa en un lenguaje mucho ms cercano a como piensa un ser humano, para luego compilarlo a un programa ms manejable por una computadora

Tipos de compiladores:
Esta taxonoma de los tipos de compiladores no es excluyente, por lo que puede haber compiladores que se adscriban a varias categoras:

Compiladores cruzados: generan cdigo para un sistema distinto del que estn funcionando. Compiladores optimizadores: realizan cambios en el cdigo para mejorar su eficiencia, pero manteniendo la funcionalidad del programa original. Compiladores de una sola pasada: generan el cdigo mquina a partir de una nica lectura del cdigo fuente. Compiladores de varias pasadas: necesitan leer el cdigo fuente varias veces antes de poder producir el cdigo mquina. Compiladores JIT (Just In Time): forman parte de un intrprete y compilan partes del cdigo segn se necesitan.

Pauta de creacin de un compilador: En las primeras pocas de la informtica, el software de los compiladores era considerado como uno de los ms complejos existentes. Los primeros compiladores se realizaron programndolos directamente en lenguaje mquina o en ensamblador. Una vez que se dispone de un compilador, se pueden escribir nuevas versiones del compilador (u otros compiladores distintos) en el lenguaje que compila ese compilador. Actualmente existen herramientas que facilitan la tarea de escribir compiladores intrpretes informticos. Estas herramientas permiten generar el esqueleto del analizador sintctico a partir de una definicin formal del lenguaje de partida, especificada normalmente mediante una gramtica formal y barata, dejando nicamente al programador del compilador la tarea de programar las acciones semnticas asociadas.