TRADUCTORES: ENSAMBLADORES, COPILADORES Y INTERPRETES.


 ENSAMBLADOR

Es un tipo de lenguaje de bajo nivel para escribir programas informáticos, & constituye la representación mas directa del código maquina especifico para cada arquitectura de computadoras legible por un programador.


QUE ES UN ENSAMBLADOR?
un ensamblador(essambler en ingles) es un programa que crea código objeto traduciendo instrucciones nemonicas de un programa fuente escrito en ensamblador a códigos ejecutables e interpretando los nombres simbólicos para direcciones de memoria y otras entidades(ensamblado).

QUE OFRECEN LOS ENSAMBLADORES AVANZADOS?

control avanzado de estructuras.
procedimiento de alto nivel,declaración de funciones.
tipos de datos que incluyen: estructuras,registros,uniones,clases & conjuntos.
sofisticado procesamiento de macros.


TIPOS DE ENSAMBLADORES:

(Aunque todos los ensambladores realizan basicamente las mismas tareas,podemos clasificarlos de acuerdo a características),asi podemos clasificarlas en:

ENSAMBLADORES CRUZADOS (CROSS-ASSEMBLER).
ENSAMBLADORES RESIDENTES.
MACROENSAMBLADORES.
ENSAMBLADORES DE UNA FASE.
ENSAMBLADORES DE DOS FASES.

INTERPRETES & COMPILADORES:




Existen dos tipos principales de traductores de los lenguajes de programación de alto nivel: Compilador e intérprete.
Existen dos tipos principales de traductores de los lenguajes de programación de alto nivel:
Compilador, que analiza el programa fuente y lo traduce a otro equivalente escrito en otro lenguaje (por ejemplo, en el lenguaje de la máquina). Su acción equivale a la de un traductor humano, que toma un libro y produce otro equivalente escrito en otra lengua.
Intérprete, que analiza el programa fuente y lo ejecuta directamente, sin generar ningún código equivalente. Su acción equivale a la de un intérprete humano, que traduce las frases que oye sobre la marcha, sin producir ningún escrito permanente. Intérpretes y compiladores tienen diversas ventajas e inconvenientes que los hacen complementarios:
Un intérprete facilita la búsqueda de errores, pues la ejecución de un programa puede interrumpirse en cualquier momento para estudiar el entorno (valores de las variables, etc.). Además, el programa puede modificarse sobre la marcha, sin necesidad de volver a comenzar la ejecución.
Un compilador suele generar programas más rápidos y eficientes, ya que el análisis del lenguaje fuente se hace una sola vez, durante la generación del programa equivalente. En cambio, un intérprete se ve obligado generalmente a analizar cada instrucción tantas veces como se ejecute (incluso miles o millones de veces).
Un intérprete permite utilizar funciones y operadores más potentes, como por ejemplo ejecutar código contenido en una variable en forma de cadenas de caracteres. Usualmente, este tipo de instrucciones es imposible de tratar por medio de compiladores. Los lenguajes que incluyen este tipo de operadores y que, por tanto, exigen un intérprete, se llaman interpretativos. Los lenguajes compilativos, que permiten el uso de un compilador, prescinden de este tipo de operadores.


0 comentarios: