Anda di halaman 1dari 3

COMPILADORES E INTRPRETES: SIMILITUDES Y DIFERENCIAS NOTA: 4.

0 En el presente documento se ver y se tratara de comprender todos los conceptos claves que nos definan que es un compilador y que es un intrprete y sus respectivos funcionamientos para definir as las diferencias y semejanzas que existen entre estas herramientas y de igual manera realizar una explicacin sobre las etapas que cumple un compilador y el contexto dentro del cual funciona este tipo de lenguajes. Muy bien ya dicho lo anterior es necesario ahora hablar sobre el concepto del compilador el cual no es mas que un programa capaz de leer un programa escrito en lenguaje fuente y traducirlo a un programa equivalente esta vez escrito en otro lenguaje el cual es conocido como lenguaje objeto no sin antes el compilador informarle al usuario sobre la posible presencia de errores en el lenguaje fuente, y adicional a este concepto se puede agregar que existe una diversidad de compiladores significativa dada una cantidad apreciable de lenguajes fuentes desde los lenguajes de programacin tradicionales pasando a los lenguajes especializados que han ido surgiendo para ocupar espacios importantes en cualquier rea de la informtica y como si esto fuera poco tambin existe una variada gama de lenguajes objetos los cuales pueden ser un lenguaje de programacin o el lenguaje de mquina de cualquier computador entre microprocesadores y supercomputadores. (Aho Alfred, et al 1998) Ya una vez conocido el concepto de compilador y lo que este conlleva se puede empezar a hablar del concepto de interprete el cual no es ms que un programa que se ejecuta bajo la siguiente secuencia: se obtiene la secuencia siguiente a ejecutar para despus determinar las acciones a ejecutarse y una vez identificadas procede a ejecutarlas finalmente para cumplir as con una secuencia muy parecida a la que realizan los ordenadores tradicionales y que en cierto modo permite calificar a los intrpretes como simuladores en ordenadores anfitriones de una maquina diseada con fines especiales cuyo lenguaje maquina es un lenguaje de alto nivel. (Snchez Dueas & Valverde Andreu, 1989) Vale tambin la pena resaltar que existe una contraposicin de los intrpretes frente a los compiladores ya que estos ltimos se encargan de traducir un programa desde su descripcin la cual se hace en un lenguaje de programacin al cdigo maquina del sistema que acta como destino mientras que los intrpretes realizan la traduccin que se desea a medida que esta sea prioritaria y muchas veces no guardan el resultado de la misma. As mismo podemos tambin se pueden recordar las ventajas que existen entre unos frente a los otros y se puede encontrar que al momento de compilar este proceso se hace una vez a pesar de ejecutar un numero de indefinidas ocasiones al igual que en los bucles ya que al compilar se genera un cdigo equivalente al bucle pero cuando se pasa a interpretar se traduce una lnea en reiteradas veces al tiempo en que se repite dicho bucle y la ventaja ms importante del compilador frente al intrprete es que existe una visin ms global del programa la cual se hace evidente a la hora de encontrar los posibles errores y la informacin de estos es mucho ms detallada. En cuanto a la

ventaja de los Intrpretes se puede destacar que necesitan menor espacio de memoria y que le permiten al programador una interactividad con el cdigo en el tiempo de desarrollo. Regresando a los compiladores es necesario comprender las fases que cumplen estos programas las cuales son la fase de anlisis del programa fuente y la etapa de sntesis del programa objeto las cuales estn divididas a su vez as la fase de anlisis en anlisis lxico sintctico y semntico mientras que la etapa de sntesis lleva a la generacin de cdigo intermedio y a la optimizacin del mismo. Una vez aclarados los conceptos de compilador y sus fases y el concepto de interprete mas las diferencias y semejanzas entre ambos se puede proseguir hablando sobre el contexto del compilador y se puede comprender que si bien es factor clave en la construccin de un programa escrito en cdigo maquina a partir del lenguaje fuente necesita de otros componentes tales como el preprocesador el ensamblador el director de carga y enlace los cuales cumplen la siguiente secuencia: El preprocesador se encarga de reunir toda la informacin del programa fuente que normalmente se almacena en archivos diferentes y una vez organizada toda la informacin de este empieza la funcin del compilador el cual se encarga de traducir el programa objeto y de informar sobre la posible presencia de errores y terminar convirtindolo en un programa objeto y luego el ensamblador traduce el producto anterior en lenguaje ensamblador de cdigo maquina el cual pasa directamente al director de carga y enlace el cual se encarga de tomar el cdigo relocalizable modificar las direcciones relocalizables y ubicar las instrucciones y datos modificados en las posiciones de memoria apropiadas para cada uno aunque es necesario tener en cuenta de que muchos de estos pasos no se cumplen estrictamente ya que es un proceso dependiente del lenguaje que se traduce y el entorno en el cual se est trabajando. (Brookshear J. Glenn 1993) Se puede concluir este ensayo con la satisfaccin de haber comprendido los conceptos claves acerca de la compilacin y la interpretacin haciendo diferencias entre ambos y las ventajas que estos programas presentan entre si adems que es necesario comprenderlo para un mejor aprendizaje de las tcnicas de programacin y los retos que han de presentarse en algn futuro en cualquier campo donde haya de aplicarse los conocimientos adquiridos en la Ingeniera de Sistemas.

ANDRS BERDUGO DE LA ROSA TEORIA DE AUTOMATAS 1 DE FEBRERO DE 2014.

REFERENCIAS

Aho Alfred, Sethi Ravi, Ullman Jeffrey. 1998 Compiladores principios y herramientas. Mxico. Pearson Snchez Dueas Gonzalo, Valverde Andreu Juan Antonio. 1989 Compiladores e Interpretes un enfoque pragmtico. Madrid. Consejo Editorial Brookshear J.Glenn. 1993 Teora de la Computacin. Madrid. Addison Wesley Iberoamrica Espaa S.A