Вы находитесь на странице: 1из 4

DESCUBRIENDO COMPILADORES

DESCUBRIENDO COMPILADORES

MARTINEZ SARMIENTO
JORGE PEDRO
INGENIERIA DE SISTEMAS,
UNIVERSIDAD PRIVADA SAN
PEDRO
CHIMBOTE, PERU
JORGE.M16@HOTMAIL.COM

Fecha

DESCUBRIENDO
COMPILADORES

Este documento est hecho con la finalidad de Analizar y


comprender que es un compilador, un poco de su historia y los
programas con los que se relaciona as como sus diferentes
fases.

I) INTRODUCCION
Los compiladores son los programas de computadora que
traducen un lenguaje a otro. Toma como entrada un programa
escrito en su lenguaje fuente y produce un programa equivalente
escrito en su lenguaje objetivo. Por lo regular el lenguaje fuente es
un lenguaje de alto nivel. Un compilador es un programa muy
completo con un nmero de lneas de cdigo que puede variar de
10 000 a 1 000000.
Los compiladores se utilizan en casi todas
las formas de la computacin.

III) TIPOS DE TRADUCTORES


1) Compilador: programa que convierte un archivo de
lenguaje de programacin a su correspondiente en lenguaje objeto.
2) Ensamblador: programa que convierte de lenguaje
nemnico a lenguaje mquina.
3) Formadores de texto: toman como entrada una cadena de
caracteres que incluye el texto a componer y rdenes para
identificar.
4) Intrpretes: ejecutan las instrucciones del programa segn se
vallan presentando. Permiten aadir cdigo durante la ejecucin.

IV) FASES DE UN COMPILADOR


Conceptualmente un compilador opera en fases, cada una de las

Los avances ms recientes en el diseo de compiladores han


incluido lo siguiente:
En primer lugar la aplicacin de algoritmos ms sofisticados para
inferir o simplificar la informacin contenida en un programa al
igual que el desarrollo de lenguajes de programacin ms
sofisticados. En segundo lugar los compiladores se han vuelto cada
vez ms una parte de un ambiente de desarrollo interactivo basado
en ventanas que incluye editores, legadores depuradores y
administradores de proyectos.

II) DEFINICION

cuales transforma el programa fuente de una representacin a otra.


Fig.2 Proceso de compilacin

Son programas de computadora que traducen de un lenguaje a


otro. Un compilador toma como entrada un programa escrito en
lenguaje fuente y produce un programa equivalente escrito en
lenguaje objeto. Generalmente al lenguaje fuente se le asocia como
leguaje de alto nivel, mientras el lenguaje objeto se conoce como
cdigo de objeto (cdigo de maquina) escrito especficamente para
una maquina objeto.

a) ANALIZADOR LXICO
Lee la secuencia de caracteres de izquierda a derecha del
programa fuente agrupa las secuencias de caracteres en unidades

con significado propio.

Fig. 1 Uso y funcin del compilador.

22
de mayo del 2016

Fecha

DESCUBRIENDO
COMPILADORES

Fig.3 Analizador lxico.

Cdigo Optimizado
a[ndice]=6

Fig.5 Analizador semntico.

Cdigo Intermedio
ti= ndice*elem_size(a)
t2=&a+t1
t3=6

V) GENERACIN Y OPTIMIZACIN
DE CDIGO INTERMEDIO
Consiste en la calibracin del rbol sintctico donde ya no
aparecen construcciones de alto nivel. Generando un cdigo
mejorado, llamado cdigo intermedio.

b) ANALIZADOR SINTCTICO

TABLA I
MUESTRA CODIGO OPTIMIZADO E INTERMEDIO

VI) GENERACION DE CDIGO OBJETO


Toma como entrada la representacin intermedia y genera el
cdigo objeto. La optimizacin depende la mquina, es necesario
conocer el conjunto de instrucciones, entre otros.
TABLA II
Determina s la secuencia de componentes lxicos sigue la
sintaxis del lenguaje y obtiene una estructura jerrquica del
programa en forma de rbol.
Fig.4 Analizador sintctico.

MOV R0,t1
MOV R1,&a
ADD R1,R0
MOV *R1,6

Valor de intex ->


Direccin de a -> R1
Sumar R0 a R1
Constante 6 ->direccin en
R1
MUESTRA LA GENERACION CODIGO OBJETO

c)

ANALIZADOR SEMNTICO

VII) TABLA DE SMBOLOS


Es una estructura tipo diccionario con operaciones insercin,
borrado y bsqueda, que almacena informacin sobre los smbolos
que van apareciendo a la largo del programa, como son:
Los identificadores (variables y funciones)
Etiquetas
Tipos de definiciones por el usuario (arreglos, registros, etc.)

Realiza las comprobaciones necesarias sobre el rbol sintctico


para determinar el correcto significado del programa.

Gestor de errores: detecta e informa de errores que se producen


durante le fase de anlisis.

VII) CONCLUSIONES
Permite desarrollar algoritmos eficientes para que sea ms
manejable para un computador.

22
de mayo del 2016

Fecha

Como parte importante de este proceso de traduccin, el


DESCUBRIENDO
compilador informa a su usuario
de la presencia de errores en el
programa fuente.
COMPILADORES
Pude ver cmo es que trabaja un compilado y las fases que este
tiene siendo de por s de mucha utilidad para los programadores
Reconocimientos
Le agradezco a mi profesor por mostrarnos a travs de su
enseanza los diferentes temas que podemos abordar en el curso de
compiladores por que sin duda esto me servir en el desarrollo de
mi vida como profesional.

[2]

Clocksin, William (1997). Clause and effect. Springer- Verlag.

p. 93. ISBN 978-3-540-62971-9.

[3]

Laborda, Javier; Josep Galimany, Rosa Mara Pena, Antoni Gual

(1985). Software. Biblioteca prctica de la computacin. Barcelona:


Ediciones Ocano-xito, S.A.

[4]

Aho, Alfred V.; Ravi Sethi, Jeffrey D. Ullman (2008). Introduccin

a la Compilacin. Compiladores: Principios, tcnicas y prcticas.


Mxico: Addison Wesley.

[5]

Compiladores: Conceptos Fundamentales. B. Teufel, S. Schmidt, T.

Teufel. Addison Wesley Iberoamericana.

REFERENCIAS
[1]
http://es.slideshare.net/leopoldocapa/introduccin-a-compiladorespresentation?qid=c53b5ff2-88c7-49c1-882b42d7dccbcf3f&v=&b=&from_search=4

22
de mayo del 2016

Вам также может понравиться

  • Cloud Computing - Martinez Sarmiento Jorge
    Cloud Computing - Martinez Sarmiento Jorge
    Документ20 страниц
    Cloud Computing - Martinez Sarmiento Jorge
    pruebaprueba123456
    Оценок пока нет
  • Metodologia XP - Practica
    Metodologia XP - Practica
    Документ2 страницы
    Metodologia XP - Practica
    pruebaprueba123456
    Оценок пока нет
  • Caso I Eleccion de Mercados
    Caso I Eleccion de Mercados
    Документ4 страницы
    Caso I Eleccion de Mercados
    pruebaprueba123456
    Оценок пока нет
  • A 10
    A 10
    Документ10 страниц
    A 10
    pruebaprueba123456
    Оценок пока нет
  • Caso Practico
    Caso Practico
    Документ1 страница
    Caso Practico
    pruebaprueba123456
    Оценок пока нет
  • MINMINAS - Plan Estratégico TIC v3 PDF
    MINMINAS - Plan Estratégico TIC v3 PDF
    Документ69 страниц
    MINMINAS - Plan Estratégico TIC v3 PDF
    pruebaprueba123456
    Оценок пока нет
  • Informe Caos
    Informe Caos
    Документ30 страниц
    Informe Caos
    pruebaprueba123456
    Оценок пока нет
  • Fotografía de Página Completa
    Fotografía de Página Completa
    Документ1 страница
    Fotografía de Página Completa
    pruebaprueba123456
    Оценок пока нет
  • Escribir Publicar Articulo Cientifico
    Escribir Publicar Articulo Cientifico
    Документ47 страниц
    Escribir Publicar Articulo Cientifico
    pruebaprueba123456
    Оценок пока нет
  • 3P F
    3P F
    Документ5 страниц
    3P F
    pruebaprueba123456
    Оценок пока нет
  • Teoria de Matematicas Discretas 2 para La UT
    Teoria de Matematicas Discretas 2 para La UT
    Документ2 страницы
    Teoria de Matematicas Discretas 2 para La UT
    Jhonattan Villamil Zamora
    Оценок пока нет
  • PDF
    PDF
    Документ3 страницы
    PDF
    Diego
    Оценок пока нет
  • Buffer OverFlow
    Buffer OverFlow
    Документ48 страниц
    Buffer OverFlow
    Santiago Estrella
    Оценок пока нет
  • ACME
    ACME
    Документ18 страниц
    ACME
    MONICA YAMILE BERMUDEZ SEGURA
    Оценок пока нет
  • Creando y Usando DLLs en Visual
    Creando y Usando DLLs en Visual
    Документ7 страниц
    Creando y Usando DLLs en Visual
    Stz Salva
    Оценок пока нет
  • Robà Tica Con MatLab 1
    Robà Tica Con MatLab 1
    Документ20 страниц
    Robà Tica Con MatLab 1
    Francisco Galleguillos
    Оценок пока нет
  • Resumen Sesiones 1 y 2 EPED
    Resumen Sesiones 1 y 2 EPED
    Документ9 страниц
    Resumen Sesiones 1 y 2 EPED
    achilipun
    Оценок пока нет
  • Simbolos de Matlab y Mas
    Simbolos de Matlab y Mas
    Документ2 страницы
    Simbolos de Matlab y Mas
    Albert Lara
    Оценок пока нет
  • Desarrollando Sistemas Multiagentes Sobre AgentNet
    Desarrollando Sistemas Multiagentes Sobre AgentNet
    Документ11 страниц
    Desarrollando Sistemas Multiagentes Sobre AgentNet
    Eduard Beltre
    Оценок пока нет
  • Diagrama de Clases, Parte II
    Diagrama de Clases, Parte II
    Документ13 страниц
    Diagrama de Clases, Parte II
    Josefa Baez
    Оценок пока нет
  • Previo 01 - Computación Grafica
    Previo 01 - Computación Grafica
    Документ3 страницы
    Previo 01 - Computación Grafica
    Cruz
    Оценок пока нет
  • SQL - Ensayo
    SQL - Ensayo
    Документ2 страницы
    SQL - Ensayo
    David Velázquez Rangel
    67% (3)
  • Procedimientos de Almacenado
    Procedimientos de Almacenado
    Документ45 страниц
    Procedimientos de Almacenado
    Diego Casco
    Оценок пока нет
  • Disparadores SQL - 1
    Disparadores SQL - 1
    Документ4 страницы
    Disparadores SQL - 1
    Rober Yûsuke Akatsuki
    Оценок пока нет
  • Programa Curso AVANZADO
    Programa Curso AVANZADO
    Документ3 страницы
    Programa Curso AVANZADO
    universale24140
    Оценок пока нет
  • Cuestionario Ofimática Y Sistemas
    Cuestionario Ofimática Y Sistemas
    Документ6 страниц
    Cuestionario Ofimática Y Sistemas
    maria camila sierra del valle
    Оценок пока нет
  • Ada95 PDF
    Ada95 PDF
    Документ48 страниц
    Ada95 PDF
    ggonald
    Оценок пока нет
  • Ejercicios Python
    Ejercicios Python
    Документ7 страниц
    Ejercicios Python
    Emerson Asto Rodriguez
    0% (1)
  • Dossier de Prensa. Kerube González 25I107
    Dossier de Prensa. Kerube González 25I107
    Документ9 страниц
    Dossier de Prensa. Kerube González 25I107
    Kerube Mabel
    Оценок пока нет
  • Planeacion Estructura Datos
    Planeacion Estructura Datos
    Документ11 страниц
    Planeacion Estructura Datos
    sevenmx
    Оценок пока нет
  • Transparencias VHDL
    Transparencias VHDL
    Документ21 страница
    Transparencias VHDL
    Neyder Ordoñez
    Оценок пока нет
  • Lenguaje SL
    Lenguaje SL
    Документ11 страниц
    Lenguaje SL
    luis enrique ortiz velasco
    Оценок пока нет
  • Objetivos Del MRP
    Objetivos Del MRP
    Документ12 страниц
    Objetivos Del MRP
    Adam Fox
    Оценок пока нет
  • Jav
    Jav
    Документ30 страниц
    Jav
    Peter Saez
    Оценок пока нет
  • Metodos Numericos Falsa Posicion
    Metodos Numericos Falsa Posicion
    Документ9 страниц
    Metodos Numericos Falsa Posicion
    HeiiDy LuU
    Оценок пока нет
  • 04 TDA Cola PDF
    04 TDA Cola PDF
    Документ41 страница
    04 TDA Cola PDF
    Alan Hernandez
    Оценок пока нет
  • 1-Simulacion Codigos de Linea
    1-Simulacion Codigos de Linea
    Документ4 страницы
    1-Simulacion Codigos de Linea
    Juliana Cantillo
    Оценок пока нет
  • Control Semana 4 IACC
    Control Semana 4 IACC
    Документ8 страниц
    Control Semana 4 IACC
    pablo canibilo
    Оценок пока нет
  • Ejemplo de Implementacion de Patron Prototipo
    Ejemplo de Implementacion de Patron Prototipo
    Документ4 страницы
    Ejemplo de Implementacion de Patron Prototipo
    ALESSANDRO DEL PIERO VILLANUEVA RAMIREZ
    Оценок пока нет
  • SOperativos
    SOperativos
    Документ7 страниц
    SOperativos
    Fernando Perez Torres
    Оценок пока нет