procesadores de lenguajes

9
GUISSELA FERNANDA GUERRERO CRIOLLO ESCUELA DE INGENIERIA EN SISTEMAS PUCESI

Upload: guissela-guerrero

Post on 21-Feb-2016

212 views

Category:

Documents


0 download

DESCRIPTION

En esta revista encontraremos todo lo relacionado a procesadores de lenguajes conceptos cortos y muy comprensibles

TRANSCRIPT

GUISSELA FERNANDA GUERRERO CRIOLLO

ESCUELA DE INGENIERIA EN SISTEMAS

PUCESI

1

INTRODUCCION

Los Procesadores de Lenguaje son todos los programas que a

través de una entrada escrita en un lenguaje de programación

pueden manipular herramientas de software y hardware de un

computador.

También es el nombre genérico que reciben todas las aplicaciones

informáticas en las cuales uno de los datos fundamentales de

entrada es un lenguaje. La definición anterior afecta a una gran

variedad de herramientas software, algunas de ellas son las que

veremos en este documento.

2

TRADUCTORES

CLASIFICACION

Se define como traductor de

lenguaje a 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.

Ensambladores

Traducen los programas escritos en lenguaje

ensamblador a lenguaje máquina.

Compiladores

Transforma textos fuente de lenguajes de

alto nivel a lenguajes de bajo nivel.

Generan los resultados a partir de los datos

de entrada (fase de ejecución).

3

MONTADORES DE ENLACE

Interpretes

Analiza y ejecuta simultáneamente un

programa escrito en un lenguaje

fuente.

4

CARGADORES

D ECOMPILADORES

Coloca el fichero ejecutable en

memoria asignando el espacio

de memoria necesario al

programa y pasando el control a

la primera de las instrucciones a

ejecutar. Se incluye en el

sistema operativo.

5

DESENSAMBLADORES

D E

P

U

R

A

D

O

R

E

S

Caso particular de los decompiladores, traducen de código

máquina a ensamblador.

Es un caso más fácil puesto que hay una correspondencia directa

entre las instrucciones ensamblador y el código máquina.

Herramientas que permiten encontrar y

corregir los errores de los programas.

Suelen ir ligadas a los compiladores.

Permiten:

Observar la traza de los programas

fuente, visualizando los valores de

variables, direcciones u operaciones.

Comprobación del código objeto

generado.

Visualización de los registros de la

máquina.

Utilización de parte de la información

usada en tiempo de compilación, que

habitualmente no se almacena en

ejecución.

6

Analizadores de

Rendimiento

Herramientas que permiten

examinar el comportamiento de

los programas en tiempo de

ejecución, comprobándose qué

zonas de código trabajan

eficientemente y cuáles deberían

ser revisadas por su bajo

rendimiento.

Pueden ser herramientas independientes o estar incluidos en los

compiladores e invocarse por medio de opciones de

compilación.

Algunas opciones: elegir entre velocidad y tamaño del código

ejecutable; generar código para una máquina específica dentro

de una familia; eliminar comprobación de rangos o

desbordamientos de pila; eliminación de código muerto o no

utilizado; ejecución en cortocircuito de expresiones booleanas;

eliminación de funciones no utilizadas.

7

Herramientas habituales en informática (PKZIP,

ARJ...). Un caso particular son los compresores de

ejecutables (EXEPACK sólo para programas

desarrollados con compiladores de Microsoft,

PKLITE, LZEXE para cualquier ejecutable).

COMPRESORES

PREPROCESADORES

Caso especial de un traductor en el que se

remplazan macroinstrucciones no haciendo

ningún tipo de análisis. Suelen ir

incorporados en compiladores.

8

FORMATEADORES

Los hay para diferentes propósitos

dedicados a formatear textos,

ecuaciones o programas. Estos

últimos resaltan su sintaxis o su

estructura para lo que es necesario

conocer la sintaxis del lenguaje a

formatear. Los conversores de

formato entrarían dentro de este

grupo.

EDITORES

Son los editores de lenguajes de

programación que resaltan la

sintaxis mediante colores o tipos de

letras en el mismo momento en que

el programador escribe, sin que

tenga necesidad de compilar

puesto que llevan incorporada la

sintaxis del lenguaje.