SlideShare a Scribd company logo
1 of 12
Download to read offline
1.5 GENERADORES DE CODIGO PARA COMPILADOES(COMPILADOR DE COMPILADORES) MAYRA HERNANDEZ GALINDO NAYELI HERNANDEZ MELLADO ELIZABETH RAMIREZ LUNA DESLY SANCHEZ JUAREZ
INTRODUCCION Aquí se hablará de las herramientas generadoras automáticas de código para un compilador. Estas herramientas trabajan basadas en un conjunto de reglas; estas reglas definen la traducción de las instrucciones del lenguaje intermedio al lenguaje de máquina.
OBJETIVO El compilador recibe una entrada de caracteres, por lo general escrita por el programador.  El compilador realiza los análisis: léxico, sintáctico y semántico, para generar seguidamente el código intermedio. Se hace la optimización del código intermedio. Realiza la generación de código objeto en lenguaje de máquina.
Un compilador o compilador generador es una herramienta que crea un programa de análisis , intérprete o compilador de algún tipo de descripción formal de un lenguaje y una maquina. La más antigua y aún más común forma de compilador de compilador es un generador de analizadores sintácticos, cuya entrada es una gramática de un lenguaje de programación, y cuya salida se genera el código fuente de un analizador utiliza a menudo como un componente de un compilador .
Compilador experimentales compilador: Semántica denotativa. Ineficientes en tiempo y espacio. METACOMPILADOR: Compilador de compiladores: recibe como entrada  especificaciones del lenguaje.
El desarrollo es la unión de la generación de código con la parte de análisis. COMPILADOR DE COMPILADORES: Reescribe generadores maquina, en función de reescritura gramatical.
. ANTLR  puede ser utilizado para la comprobación de tipos simultánea, constante propagación, y más durante la fase de análisis.  ANTLR es un software desarrollado en JAVA  permite generar analizadores léxicos y sintácticos.
El uso de una sola herramienta para todos los niveles tiene varias ventajas       La más importante es la “estandarización”: con ANTLR basta con comprender el  paradigma de análisis una vez para poder implementar todas las fases de análisis. flex está basado en autómatas finitos deterministas y bison en un analizador LALR), además de necesitar de otras herramientas para  realizar el análisis semántico.
CONCLUSIONES Para crear un generador de código se deben hacer muchas de las tareas que realizan los compiladores; algunas de estas tareas son:  La búsqueda de patrones, la escritura de código, el análisis sintáctico, el análisis léxico y la optimización de código.
BIBLIOGRAFIA http://translate.google.com.mx/translate?hl=es&langpair=en|es&u=http://en.wikipedia.org/wiki/Compiler-compiler   http://www.uco.es/users/ma1fegan/pl/practicas/ANTLR/Introduccion-ANTLR.pdf   Libro: Compiladores
CUESTIONARIO ¿Qué es un compilador generador ? ¿Qué es el compilador de compiladores? ¿Que es  ANTLR? ¿Que lenguaje utiliza ANTLR? ¿Para que se utiliza ANTLR? ¿Que análisis realiza el compilador ?

More Related Content

What's hot

Cap2 compiladores
Cap2 compiladoresCap2 compiladores
Cap2 compiladoresCJAO
 
Introduccion a la programacion 2010
Introduccion a la programacion 2010Introduccion a la programacion 2010
Introduccion a la programacion 2010Mario Lopez
 
Lenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesLenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesIsrael Castillo Cruz
 
Codificación. Código Fuente, Objeto y Ejecutable.
Codificación. Código Fuente, Objeto y Ejecutable.Codificación. Código Fuente, Objeto y Ejecutable.
Codificación. Código Fuente, Objeto y Ejecutable.Isabel Gómez
 
Cap1 compiladores
Cap1 compiladoresCap1 compiladores
Cap1 compiladoresCJAO
 
Grupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iGrupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iRossana Sosa
 
Ensamblador y enlazador
Ensamblador y enlazadorEnsamblador y enlazador
Ensamblador y enlazadorRickyZhengHu
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretadorFrancisco Leal
 
Traducción de un programa: compilación, enlace de un programa, errores en tie...
Traducción de un programa: compilación, enlace de un programa, errores en tie...Traducción de un programa: compilación, enlace de un programa, errores en tie...
Traducción de un programa: compilación, enlace de un programa, errores en tie...Jorge Rodriguez
 
Herramientas
HerramientasHerramientas
HerramientasIsabel
 
C:\documents and settings\clientea\mis documentos\compiladores
C:\documents and settings\clientea\mis documentos\compiladoresC:\documents and settings\clientea\mis documentos\compiladores
C:\documents and settings\clientea\mis documentos\compiladoresNancyandRegina317
 
Estructura de un interprete
Estructura de un interpreteEstructura de un interprete
Estructura de un interpreteperlallamas
 
Compiladores diapositivas
Compiladores diapositivasCompiladores diapositivas
Compiladores diapositivasjonathangrief
 
1. introduccion a java
1. introduccion a java1. introduccion a java
1. introduccion a javaNeto Vel Mtz
 
Codigo fuente y codigo abierto
Codigo fuente y codigo abiertoCodigo fuente y codigo abierto
Codigo fuente y codigo abiertoEli Diaz
 

What's hot (19)

Cap2 compiladores
Cap2 compiladoresCap2 compiladores
Cap2 compiladores
 
Introduccion a la programacion 2010
Introduccion a la programacion 2010Introduccion a la programacion 2010
Introduccion a la programacion 2010
 
Lenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesLenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretes
 
Codificación. Código Fuente, Objeto y Ejecutable.
Codificación. Código Fuente, Objeto y Ejecutable.Codificación. Código Fuente, Objeto y Ejecutable.
Codificación. Código Fuente, Objeto y Ejecutable.
 
Cap1 compiladores
Cap1 compiladoresCap1 compiladores
Cap1 compiladores
 
Traductores de lenguajes
Traductores   de    lenguajesTraductores   de    lenguajes
Traductores de lenguajes
 
Traductor y su estructura
Traductor y su estructuraTraductor y su estructura
Traductor y su estructura
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Grupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iGrupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes i
 
Compiladores conceptos
Compiladores conceptosCompiladores conceptos
Compiladores conceptos
 
Ensamblador y enlazador
Ensamblador y enlazadorEnsamblador y enlazador
Ensamblador y enlazador
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretador
 
Traducción de un programa: compilación, enlace de un programa, errores en tie...
Traducción de un programa: compilación, enlace de un programa, errores en tie...Traducción de un programa: compilación, enlace de un programa, errores en tie...
Traducción de un programa: compilación, enlace de un programa, errores en tie...
 
Herramientas
HerramientasHerramientas
Herramientas
 
C:\documents and settings\clientea\mis documentos\compiladores
C:\documents and settings\clientea\mis documentos\compiladoresC:\documents and settings\clientea\mis documentos\compiladores
C:\documents and settings\clientea\mis documentos\compiladores
 
Estructura de un interprete
Estructura de un interpreteEstructura de un interprete
Estructura de un interprete
 
Compiladores diapositivas
Compiladores diapositivasCompiladores diapositivas
Compiladores diapositivas
 
1. introduccion a java
1. introduccion a java1. introduccion a java
1. introduccion a java
 
Codigo fuente y codigo abierto
Codigo fuente y codigo abiertoCodigo fuente y codigo abierto
Codigo fuente y codigo abierto
 

Similar to Repuesto de expo_de_programacion

1.5 GENERADORES DE CODIGO PARA COMPILADORES (COMPILADOR DE COMPILADORES)
1.5  GENERADORES  DE CODIGO  PARA COMPILADORES (COMPILADOR DE COMPILADORES)1.5  GENERADORES  DE CODIGO  PARA COMPILADORES (COMPILADOR DE COMPILADORES)
1.5 GENERADORES DE CODIGO PARA COMPILADORES (COMPILADOR DE COMPILADORES)elizabethrmlm
 
Materia unidad compiladores
Materia unidad compiladoresMateria unidad compiladores
Materia unidad compiladoresbachispasaca
 
Compiladores y analizador lexicos
Compiladores y analizador lexicosCompiladores y analizador lexicos
Compiladores y analizador lexicosdiana8320
 
Evolucion de los compiladores1
Evolucion de los compiladores1Evolucion de los compiladores1
Evolucion de los compiladores1udalrico
 
Compilador Funcionamiento
Compilador FuncionamientoCompilador Funcionamiento
Compilador FuncionamientoKriz Kozlov
 
Investigacion sobre traductor, interprete y compilador
Investigacion sobre traductor, interprete y compilador   Investigacion sobre traductor, interprete y compilador
Investigacion sobre traductor, interprete y compilador ADOLFOISAIASGARCIASI
 
Presentación computación 1_compiladores_e_interpretes
Presentación computación 1_compiladores_e_interpretesPresentación computación 1_compiladores_e_interpretes
Presentación computación 1_compiladores_e_interpretesMichael Vreys
 
C:\fakepath\compilador
C:\fakepath\compiladorC:\fakepath\compilador
C:\fakepath\compiladorDLACGP
 
C:\fakepath\el software libre
C:\fakepath\el software libreC:\fakepath\el software libre
C:\fakepath\el software libreDanielita Lopez
 
C:\fakepath\el software libre
C:\fakepath\el software libreC:\fakepath\el software libre
C:\fakepath\el software libreDanielita Lopez
 
C:\fakepath\el software libre
C:\fakepath\el software libreC:\fakepath\el software libre
C:\fakepath\el software libreDLACGP
 
C:\fakepath\compilador
C:\fakepath\compiladorC:\fakepath\compilador
C:\fakepath\compiladorDLACGP
 
C:\fakepath\el software libre
C:\fakepath\el software libreC:\fakepath\el software libre
C:\fakepath\el software libreDanielita Lopez
 

Similar to Repuesto de expo_de_programacion (20)

1.5 GENERADORES DE CODIGO PARA COMPILADORES (COMPILADOR DE COMPILADORES)
1.5  GENERADORES  DE CODIGO  PARA COMPILADORES (COMPILADOR DE COMPILADORES)1.5  GENERADORES  DE CODIGO  PARA COMPILADORES (COMPILADOR DE COMPILADORES)
1.5 GENERADORES DE CODIGO PARA COMPILADORES (COMPILADOR DE COMPILADORES)
 
Algoritmos1
Algoritmos1Algoritmos1
Algoritmos1
 
Materia unidad compiladores
Materia unidad compiladoresMateria unidad compiladores
Materia unidad compiladores
 
Introduccion
IntroduccionIntroduccion
Introduccion
 
Compiladores y analizador lexicos
Compiladores y analizador lexicosCompiladores y analizador lexicos
Compiladores y analizador lexicos
 
H:\compiladores
H:\compiladoresH:\compiladores
H:\compiladores
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Evolucion de los compiladores1
Evolucion de los compiladores1Evolucion de los compiladores1
Evolucion de los compiladores1
 
Presentación1
Presentación1Presentación1
Presentación1
 
Presentación1
Presentación1Presentación1
Presentación1
 
Compilador Funcionamiento
Compilador FuncionamientoCompilador Funcionamiento
Compilador Funcionamiento
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
Investigacion sobre traductor, interprete y compilador
Investigacion sobre traductor, interprete y compilador   Investigacion sobre traductor, interprete y compilador
Investigacion sobre traductor, interprete y compilador
 
Presentación computación 1_compiladores_e_interpretes
Presentación computación 1_compiladores_e_interpretesPresentación computación 1_compiladores_e_interpretes
Presentación computación 1_compiladores_e_interpretes
 
C:\fakepath\compilador
C:\fakepath\compiladorC:\fakepath\compilador
C:\fakepath\compilador
 
C:\fakepath\el software libre
C:\fakepath\el software libreC:\fakepath\el software libre
C:\fakepath\el software libre
 
C:\fakepath\el software libre
C:\fakepath\el software libreC:\fakepath\el software libre
C:\fakepath\el software libre
 
C:\fakepath\el software libre
C:\fakepath\el software libreC:\fakepath\el software libre
C:\fakepath\el software libre
 
C:\fakepath\compilador
C:\fakepath\compiladorC:\fakepath\compilador
C:\fakepath\compilador
 
C:\fakepath\el software libre
C:\fakepath\el software libreC:\fakepath\el software libre
C:\fakepath\el software libre
 

Repuesto de expo_de_programacion

  • 1. 1.5 GENERADORES DE CODIGO PARA COMPILADOES(COMPILADOR DE COMPILADORES) MAYRA HERNANDEZ GALINDO NAYELI HERNANDEZ MELLADO ELIZABETH RAMIREZ LUNA DESLY SANCHEZ JUAREZ
  • 2. INTRODUCCION Aquí se hablará de las herramientas generadoras automáticas de código para un compilador. Estas herramientas trabajan basadas en un conjunto de reglas; estas reglas definen la traducción de las instrucciones del lenguaje intermedio al lenguaje de máquina.
  • 3. OBJETIVO El compilador recibe una entrada de caracteres, por lo general escrita por el programador. El compilador realiza los análisis: léxico, sintáctico y semántico, para generar seguidamente el código intermedio. Se hace la optimización del código intermedio. Realiza la generación de código objeto en lenguaje de máquina.
  • 4. Un compilador o compilador generador es una herramienta que crea un programa de análisis , intérprete o compilador de algún tipo de descripción formal de un lenguaje y una maquina. La más antigua y aún más común forma de compilador de compilador es un generador de analizadores sintácticos, cuya entrada es una gramática de un lenguaje de programación, y cuya salida se genera el código fuente de un analizador utiliza a menudo como un componente de un compilador .
  • 5. Compilador experimentales compilador: Semántica denotativa. Ineficientes en tiempo y espacio. METACOMPILADOR: Compilador de compiladores: recibe como entrada especificaciones del lenguaje.
  • 6. El desarrollo es la unión de la generación de código con la parte de análisis. COMPILADOR DE COMPILADORES: Reescribe generadores maquina, en función de reescritura gramatical.
  • 7. . ANTLR puede ser utilizado para la comprobación de tipos simultánea, constante propagación, y más durante la fase de análisis. ANTLR es un software desarrollado en JAVA permite generar analizadores léxicos y sintácticos.
  • 8. El uso de una sola herramienta para todos los niveles tiene varias ventajas La más importante es la “estandarización”: con ANTLR basta con comprender el paradigma de análisis una vez para poder implementar todas las fases de análisis. flex está basado en autómatas finitos deterministas y bison en un analizador LALR), además de necesitar de otras herramientas para realizar el análisis semántico.
  • 9.
  • 10. CONCLUSIONES Para crear un generador de código se deben hacer muchas de las tareas que realizan los compiladores; algunas de estas tareas son: La búsqueda de patrones, la escritura de código, el análisis sintáctico, el análisis léxico y la optimización de código.
  • 11. BIBLIOGRAFIA http://translate.google.com.mx/translate?hl=es&langpair=en|es&u=http://en.wikipedia.org/wiki/Compiler-compiler   http://www.uco.es/users/ma1fegan/pl/practicas/ANTLR/Introduccion-ANTLR.pdf   Libro: Compiladores
  • 12. CUESTIONARIO ¿Qué es un compilador generador ? ¿Qué es el compilador de compiladores? ¿Que es ANTLR? ¿Que lenguaje utiliza ANTLR? ¿Para que se utiliza ANTLR? ¿Que análisis realiza el compilador ?