Page 1

PROCESADORES DE LENGUAJE ESCUELA DE INGENIERIA EN SISTEMAS PUCESI CARLOS RIVADENEIRA P.


TRADUCTORES  Un traductor es un programa que procesa un texto fuente y genera un texto objeto.  Está escrito en lenguaje de implementación (LI) o también denominado lenguaje host.  El texto fuente está escrito en lenguaje fuente (LF), por ejemplo un lenguaje de alto nivel. El texto objeto está escrito en lenguaje objeto (LO), por ejemplo un lenguaje máquina, ensamblador u otro lenguaje de alto nivel.


ENSAMBLADORES  Los ensambladores son traductores sencillos, en los que el lenguaje fuente tiene una estructura simple, que permite una traducción de una sentencia fuente a una instrucción en lenguje máquina.  Hay ensambladores que tienen macroinstrucciones en su lenguaje. Estas macroinstrucciones, de acuerdo con su nombre, se suelen traducir a varias instrucciones de máquina. A este tipo de ensambladores se les denomina macroensambladores.


COMPILADORES

 Un compilador es un traductor que transforma textos fuente de lenguajes de alto nivel a lenguajes de bajo nivel .  El tiempo que se necesita para traducir un lenguaje de alto nivel a lenguaje objeto se denomina tiempo de compilación.  El tiempo que tarda en ejecutarse un programa objeto se denomina tiempo de ejecución.


MONTADORES DE ENLACE  Entre el proceso de compilación y la ejecución existe el proceso de montaje de enlaces. 

Se produce cuando el lenguaje fuente permite una fragmentación de los programas en trozos, denominados de distintas formas según el lenguaje de programación empleado tales como: módulos, units, librerias, procedimientos, funciones, subrutinas,etc.

 Dichas partes o trozos pueden compilarse por separado, produciendose los códigos objetos de cada una de las partes.  

El lenguaje ADA introduce la unidad de compilación. El montador de enlaces realiza el montaje de los distintos códigos objeto, produciendo el módulo de carga, que es el programa objeto completo, siendo el cargador quien lo trasfiere a memoria.


CARGADORES  El cargador se encarga de colocar el fichero ejecutable en memoria, asignando el espacio necesario al programa en memoria, y pasando el control a la primera de las instrucciones a ejecutar, comenzando a continuación la fase de ejecución.  El cargador es un programa incluido con el sistema operativo. 

Así en el sistema operativo MS-DOS el cargador está dentro del intérprete de comandos COMMAND.COM.


INTERPRETES  Los intérpretes son programas que simplemente ejecutan las instrucciones que encuentran en el texto fuente.  Ejemplos de interpretadores: SMALLTALK, APL y LISP.

BASIC,

LOGO,

PROLOG,

 Los intérpretes son más interactivos y facilitan la puesta a punto de programas. Algunos lenguajes de programación tan sólo pueden ser interpretados debido a sus características, por ejemplo algunos lenguajes funcionales y lenguajes orientados a objeto.


DECOMPILADORES  Los decompiladores realizan la tarea inversa a los compiladores.  Los decompiladores son los cuales el programa fuente es un lenguaje de bajo nivel y el lenguaje objeto es un lenguaje de nivel superior.  Esta tarea es difícil, sobre todo si se desea que el lenguaje objeto tenga una cierta lógica, a no ser que se conozca la forma en que se obtuvo el programa de bajo nivel (por ejemplo si se generó con un compilador determinado, y se tiene el esquema de generación de código de dicho compilador).


Desensambladores  Traducen de código máquina a ensamblador, quizá es un caso más fácil dado que hay una correspondencia directa entre las instrucciones ensamblador y código máquina.  Ejemplo: [AZAÑ97, AZAÑ98], donde se desarrollan un conjunto de herramientas para desensamblar y ensamblar bytecode de la máquina virtual de Java (JVM).


Depuradores  Los depuradores son herramientas que permiten encontrar y corregir los errores de los programas.  Los depuradores utilizan parte de la información usada en tiempo de compilación por el compilador, y que habitualmente no se almacena en ejecución, lo cual permite restablecer los lazos existentes entre el código fuente y el código objeto.  Las características habituales de los depuradores son: 1.Permiten observar la traza de los programas fuente, permitiendo la visualización del valor de cualquier variable, dirección, o expresión. 2.Comprobación del código objeto generado por cada instrucción del programa fuente.


Analizadores de rendimiento Los analizadores de rendimiento son herramientas que permiten examinar el comportamiento de los programas en tiempo de ejecuci贸n. Permiten comprobar que zonas del c贸digo trabajan eficientemente y cuales deber铆an ser revisadas por su bajo rendimiento.


Optimizadores de código Los optimizadores de código pueden ser herramientas independientes, o estar incluidas en los compiladores e invocarse por medio de opciones de compilación. Una opción habitual de optimización es elegir entre velocidad de ejecución y tamaño del código ejecutable. Ademas generan código para un microprocesador específico dentro de una familia de microprocesadores. Eliminación de código muerto o no utilizado.


Compresores Los compresores de ficheros son una herramienta habitual de uso en el campo de la informĂĄtica. Un caso particular son los compresores de ficheros ejecutables que reducen el tamaĂąo de los ejecutables.


Preprocesadores El preprocesador realiza las sustituciones, pero no hace ningĂşn tipo de anĂĄlisis del contexto donde las realiza, ĂŠsta es la principal diferencia entre un preprocesador y otros tipos de procesadores de lenguaje. Un ejemplo de preprocesador es el incorporado por los compiladores de lenguaje C.


Formateadores Los formateadores pueden ser de muchos tipos y con diferentes fines, desde los dedicados a formatear textos, ecuaciones o programas. Los formateadores de programas resaltan su sintaxis o su estructura, para lo cual es necesario conocer la sintaxis del lenguaje a formatear. TambiĂŠn pueden entrar dentro de este grupo los conversores de formatos.


Editores Los editores de lenguajes de programaci贸n con sintaxis resaltada por medio de colores o tipos de letra permiten llamar a la atenci贸n al programador en el momento mismo que est谩 escribiendo el programa, sin necesidad de compilar, dado que llevan incorporada la sintaxis del lenguaje.

PROCESADORES DE LENGUAJE  

Aplicación informática en la que uno de sus datos principales de entrada es un lenguaje.

Read more
Read more
Similar to
Popular now
Just for you