Está en la página 1de 17

1.

4 TRADUCTOR Y SU ESTRUCTURA
QU ES UNA TRADUCTOR?
Un traductor es un mediador entre dos entidades:
emisoras y receptoras, los mediadores enmascaran
la complejidad y heterogeneidad de los lenguajes.


Un traductor convierte un lenguaje de entrada
(cdigo fuente) a una de salida (cdigo objeto).

1. 4. 1 ENSAMBLADORES

Ensamblador se refiere a un tipo de programa,
informtico que se encarga de traducir un fichero
fuente escrito en un lenguaje ensamblador, a un
fichero objeto que contiene cdigo mquina
ejecutable directamente por la mquina para la que
se ha generado.

Ejemplos: MASM

FUNCIN DE UN ENSAMBLADOR:

La tarea fundamental de un ensamblador es traducir un
programa en lenguaje de ensamblador al cdigo
correspondiente en lenguaje de mquina.
.

MOTIVOS PARA USAR ENSAMBLADOR

Mayor control de la computadora.
Independencia de lenguaje.
La mayora de las computadoras pueden
ensamblar.
Los programas hechos en lenguaje ensamblador
son generalmente ms rpidos y consumen
menos recursos del sistema.
MOTIVOS PARA NO UTILIZAR

Demasiado complejo.
Comprensin ms profunda de la computadora.
Errores ms frecuentes en el programa.
Mayor tiempo de codificacin.
Difcilmente portable, es decir, un cdigo escrito
para un microprocesador en particular necesita ser
modificado muchas veces en su totalidad para
poder ser usado en otro microprocesador.

TIPOS DE ENSAMBLADORES
ENSAMBLADORES CRUZADOS: Se denominan
as a los ensambladores que se utilizan en una
computadora que posee el procesador diferente al
que tendrn las computadoras donde se va a
ejecutar el programa objeto producido.

ENSAMBLADORES RESIDENTES: Son aquellas
que permanecen en la memoria principal de la
computadora y cargar para su ejecucin al
programa objeto producido.


MICRO ENSAMBLADORES: Al programa que
indica al intrprete de instrucciones de la CPU
como debe actuar se le denomina microprograma.
El programa que ayuda a realizar este
microprograma se llama micro ensamblador.


MACRO ENSAMBLADORES: Son ensambladores
que permiten el uso de macroinstrucciones.

ENSAMBLADORES DE UNA FASE: leen una lnea
y la traducen directamente para producir una
instruccin de lenguaje maquina o la ejecuta si se
trata de una pseudosinstruccin. Se construye la
tabla de smbolos a medida que aparecen las
definiciones de variables, etiquetas, etc.

ENSAMBLADORES DE DOS FASES: Realiza la
traduccin en dos etapas: 1 fase leen el programa
fuente y construyen la tabla de smbolos, 2 fase
vuelve a leer el programa fuente y pueden ir
traduciendo totalmente pues reconocen la totalidad
de los smbolos.
1. 4. 2 COMPILADORES

Un compilador es querer traducir un programa de
un lenguaje de alto nivel, a otro lenguaje de nivel
inferior (tpicamente lenguaje mquina).


Los compiladores son programas o herramientas
encargadas de compilar. Un compilador toma un
texto (cdigo fuente) escrito en un lenguaje de alto
nivel y lo traduce a un lenguaje comprensible por
las computadoras (cdigo objeto).

FASES DEL COMPILADOR

CLASIFICACIN DE COMPILADORES

DE UNA PASADA: Examina el cdigo fuente una
vez, generando el cdigo o programa objeto.


PASADAS MLTIPLES: Requiere pasos
intermedios para producir cdigo en otro lenguaje y
una pasada final para producir y optimizar el cdigo
producido durante pasos anteriores.

COMPILADORES INCREMENTALES: Generan un
cdigo objeto, instruccin por instruccin cuando el
usuario teclea cada orden individual.

COMPILADOR CRUZADO: Se genera cdigo en
lenguaje objeto para una maquina diferente a la
que se esta utilizando para compilar.

COMPILADOR CON MONTADOR: Compila
distintos mdulos de forma independiente y
despus es capaz de aplazarlos.

AUTO COMPILADORES: Compilador que esta
escrito en el mismo lenguaje que va a compilar.

META COMPILADOR: Es programa que recibe como
entrada las especificaciones del lenguaje para el que
se desea obtener un compilador y genera como
salida el compilador para ese lenguaje.

DESCOMPILADOR: Es un programa que acepta
como entrada cdigo maquina y la traduce a un
lenguaje de alto nivel realizando el proceso inverso a
la compilacin.

1.4.3 INTERPRETES

Un intrprete es un programa capaz de analizar y
ejecutar otros programas, escritos en un lenguaje
de alto nivel. Los intrpretes suelen contraponerse
a los compiladores, ya que mientras que los
segundos se encargan de traducir un programa
desde su descripcin en un lenguaje de
programacin al cdigo mquina del sistema
destino, los primeros slo realizan la traduccin a
medida que sea necesario y normalmente, no
guardan el resultado de dicha traduccin.

JavaScript, BASIC, LISP, Smalltalk y Python son
ejemplos de lenguajes que son normalmente
interpretados en vez de compilados.

EL INTRPRETE TIENE ESTAS CARACTERSTICAS


Traduce y ejecuta una lnea del programa a la vez.
Si hay error, detiene ejecucin del programa
Programas ms lentos pero ms portables y
flexibles

También podría gustarte