SlideShare una empresa de Scribd logo
1 de 5
Descargar para leer sin conexión
Generador de Código


Daniel Alejandro Bulnes Reyna

Matricula: 1441186     Clase: Martes M1

Dra. Elisa Schaeffer
Nos podemos referir a el lenguaje por el cual funcionan las computadoras,
comprende un conjunto de instrucciones y datos a ser procesados
automáticamente. Los códigos objeto provienen de códigos intermedios
que se han creado por un programador, que como ya sabemos el código
intermedio debe ser fácil de producir y fácil de traducir al programa objeto.
Además debemos tener en cuenta las herramientas generadoras
automáticas de código para un compilador, que estas trabajan basadas
en un conjunto de reglas; estas reglas definen la traducción de las
instrucciones del lenguaje intermedio al lenguaje de máquina.

Para la generación de código, se busca en las reglas establecidas la
proposición que coincida con la entrada actual; la entrada actual proviene
de un árbol.
Para crear el código objeto es necesario que el compilador
reciba una entrada de caracteres, por lo general escrita por
el programador; después el compilador realiza los análisis:
léxico, sintáctico y semántico, para generar seguidamente
el código intermedio, el código intermedio se genera con
principios de búsqueda de patrones y aplicación de reglas.
Después se hace la optimización del código intermedio;
seguidamente se realiza la generación de código objeto en
lenguaje de máquina.
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. Estas tareas las realiza
el desarrollador una vez para una arquitectura
especifica.
http://www.wikilearning.com/curso_gratis/generadores_de_codi
go/10114-3

http://www.definicionabc.com/tecnologia/codigo-
programacion.php

Más contenido relacionado

La actualidad más candente

Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico maryr_
 
Introducción A Compiladores
Introducción A Compiladores Introducción A Compiladores
Introducción A Compiladores Nestor Traña
 
Proceso de Compilacion
Proceso de CompilacionProceso de Compilacion
Proceso de Compilacionguest9a91e2
 
Código intermedio
Código intermedioCódigo intermedio
Código intermedioyaya
 
Ejercicio compiladores
Ejercicio compiladoresEjercicio compiladores
Ejercicio compiladoresSheyli Patiño
 
Actividad 3
Actividad 3Actividad 3
Actividad 3maryr_
 
Materia unidad compiladores
Materia unidad compiladoresMateria unidad compiladores
Materia unidad compiladoresbachispasaca
 
TIPOS DE DATOS PARA C++
TIPOS DE DATOS PARA C++TIPOS DE DATOS PARA C++
TIPOS DE DATOS PARA C++Idalia Tristan
 
Apuntes generación de codigo intermedio
Apuntes generación de codigo intermedioApuntes generación de codigo intermedio
Apuntes generación de codigo intermedioHumano Terricola
 
Análisis Semántico con Cup
Análisis Semántico con CupAnálisis Semántico con Cup
Análisis Semántico con CupLAUNASA NOVENO B
 
Practica análisis léxico y semántico(compiladores)
Practica análisis léxico y semántico(compiladores)Practica análisis léxico y semántico(compiladores)
Practica análisis léxico y semántico(compiladores)Alex Toapanta
 
Clase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cppClase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cppInfomania pro
 
Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++Rosbelia Balza
 
Clase6 conceptos del analisis lexico
Clase6 conceptos del analisis lexicoClase6 conceptos del analisis lexico
Clase6 conceptos del analisis lexicoInfomania pro
 

La actualidad más candente (19)

Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico
 
Introducción A Compiladores
Introducción A Compiladores Introducción A Compiladores
Introducción A Compiladores
 
Compiladores, Analisis Lexico, Ejemplo Minilenguaje
Compiladores, Analisis Lexico, Ejemplo MinilenguajeCompiladores, Analisis Lexico, Ejemplo Minilenguaje
Compiladores, Analisis Lexico, Ejemplo Minilenguaje
 
Proceso de Compilacion
Proceso de CompilacionProceso de Compilacion
Proceso de Compilacion
 
Código intermedio
Código intermedioCódigo intermedio
Código intermedio
 
Ejercicio compiladores
Ejercicio compiladoresEjercicio compiladores
Ejercicio compiladores
 
Actividad 3
Actividad 3Actividad 3
Actividad 3
 
Unidad1 2 Lenguajes y automatas
Unidad1 2  Lenguajes y automatasUnidad1 2  Lenguajes y automatas
Unidad1 2 Lenguajes y automatas
 
Algoritmos y programacion en C++
Algoritmos y programacion en C++Algoritmos y programacion en C++
Algoritmos y programacion en C++
 
Lenguajec(1)
Lenguajec(1)Lenguajec(1)
Lenguajec(1)
 
Materia unidad compiladores
Materia unidad compiladoresMateria unidad compiladores
Materia unidad compiladores
 
TIPOS DE DATOS PARA C++
TIPOS DE DATOS PARA C++TIPOS DE DATOS PARA C++
TIPOS DE DATOS PARA C++
 
Apuntes generación de codigo intermedio
Apuntes generación de codigo intermedioApuntes generación de codigo intermedio
Apuntes generación de codigo intermedio
 
Análisis Semántico con Cup
Análisis Semántico con CupAnálisis Semántico con Cup
Análisis Semántico con Cup
 
Practica análisis léxico y semántico(compiladores)
Practica análisis léxico y semántico(compiladores)Practica análisis léxico y semántico(compiladores)
Practica análisis léxico y semántico(compiladores)
 
Clase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cppClase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cpp
 
Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++
 
Quiz semana2 programacion c++
Quiz semana2 programacion c++Quiz semana2 programacion c++
Quiz semana2 programacion c++
 
Clase6 conceptos del analisis lexico
Clase6 conceptos del analisis lexicoClase6 conceptos del analisis lexico
Clase6 conceptos del analisis lexico
 

Destacado

Arquitectura de referencia para sistemas en tiempo real
Arquitectura de referencia para sistemas en tiempo realArquitectura de referencia para sistemas en tiempo real
Arquitectura de referencia para sistemas en tiempo realPablo Navarrete
 
Mándala - Sistemas de Tiempo Real
Mándala - Sistemas de Tiempo RealMándala - Sistemas de Tiempo Real
Mándala - Sistemas de Tiempo RealMayra Rodriguez
 
Diseno de-software-en-arquitectura-cliente-servidor
Diseno de-software-en-arquitectura-cliente-servidorDiseno de-software-en-arquitectura-cliente-servidor
Diseno de-software-en-arquitectura-cliente-servidorOskr Gamez
 
Real-time Predictive Analytics in Manufacturing - Impetus Webinar
Real-time Predictive Analytics in Manufacturing - Impetus WebinarReal-time Predictive Analytics in Manufacturing - Impetus Webinar
Real-time Predictive Analytics in Manufacturing - Impetus WebinarImpetus Technologies
 
VoltDB and Flytxt Present: Building a Single Technology Platform for Real-Tim...
VoltDB and Flytxt Present: Building a Single Technology Platform for Real-Tim...VoltDB and Flytxt Present: Building a Single Technology Platform for Real-Tim...
VoltDB and Flytxt Present: Building a Single Technology Platform for Real-Tim...VoltDB
 
Manual Code::Blocks lenguaje C++
Manual Code::Blocks lenguaje C++Manual Code::Blocks lenguaje C++
Manual Code::Blocks lenguaje C++Santiago Sarmiento
 
Presentacion fundamentos de diseño wucius
Presentacion fundamentos de diseño wuciusPresentacion fundamentos de diseño wucius
Presentacion fundamentos de diseño wuciusariandrea
 
Herramientas para llevar a cabo un Sistema de Información
Herramientas para llevar a cabo un Sistema de InformaciónHerramientas para llevar a cabo un Sistema de Información
Herramientas para llevar a cabo un Sistema de Informaciónjgbd127
 
Pivotal Real Time Data Stream Analytics
Pivotal Real Time Data Stream AnalyticsPivotal Real Time Data Stream Analytics
Pivotal Real Time Data Stream Analyticskgshukla
 
Brms best practices_2011_oct_final
Brms best practices_2011_oct_finalBrms best practices_2011_oct_final
Brms best practices_2011_oct_finalEdson Tirelli
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 CapasFani Calle
 
Real-Time Event & Stream Processing on MS Azure
Real-Time Event & Stream Processing on MS AzureReal-Time Event & Stream Processing on MS Azure
Real-Time Event & Stream Processing on MS AzureKhalid Salama
 

Destacado (20)

Arquitectura de referencia para sistemas en tiempo real
Arquitectura de referencia para sistemas en tiempo realArquitectura de referencia para sistemas en tiempo real
Arquitectura de referencia para sistemas en tiempo real
 
ENCADENADORES
ENCADENADORESENCADENADORES
ENCADENADORES
 
Mándala - Sistemas de Tiempo Real
Mándala - Sistemas de Tiempo RealMándala - Sistemas de Tiempo Real
Mándala - Sistemas de Tiempo Real
 
Tema 1 introducción compilador
Tema 1 introducción compiladorTema 1 introducción compilador
Tema 1 introducción compilador
 
traduccion-dirigida-por-la-sintaxis
traduccion-dirigida-por-la-sintaxistraduccion-dirigida-por-la-sintaxis
traduccion-dirigida-por-la-sintaxis
 
Diseno de-software-en-arquitectura-cliente-servidor
Diseno de-software-en-arquitectura-cliente-servidorDiseno de-software-en-arquitectura-cliente-servidor
Diseno de-software-en-arquitectura-cliente-servidor
 
Real-time Predictive Analytics in Manufacturing - Impetus Webinar
Real-time Predictive Analytics in Manufacturing - Impetus WebinarReal-time Predictive Analytics in Manufacturing - Impetus Webinar
Real-time Predictive Analytics in Manufacturing - Impetus Webinar
 
Arreglos, Procedimientos y Funciones
Arreglos, Procedimientos y FuncionesArreglos, Procedimientos y Funciones
Arreglos, Procedimientos y Funciones
 
VoltDB and Flytxt Present: Building a Single Technology Platform for Real-Tim...
VoltDB and Flytxt Present: Building a Single Technology Platform for Real-Tim...VoltDB and Flytxt Present: Building a Single Technology Platform for Real-Tim...
VoltDB and Flytxt Present: Building a Single Technology Platform for Real-Tim...
 
Manual Code::Blocks lenguaje C++
Manual Code::Blocks lenguaje C++Manual Code::Blocks lenguaje C++
Manual Code::Blocks lenguaje C++
 
Presentacion fundamentos de diseño wucius
Presentacion fundamentos de diseño wuciusPresentacion fundamentos de diseño wucius
Presentacion fundamentos de diseño wucius
 
Herramientas para llevar a cabo un Sistema de Información
Herramientas para llevar a cabo un Sistema de InformaciónHerramientas para llevar a cabo un Sistema de Información
Herramientas para llevar a cabo un Sistema de Información
 
Ejercicios de vectores o arrays
Ejercicios de vectores o arraysEjercicios de vectores o arrays
Ejercicios de vectores o arrays
 
Pivotal Real Time Data Stream Analytics
Pivotal Real Time Data Stream AnalyticsPivotal Real Time Data Stream Analytics
Pivotal Real Time Data Stream Analytics
 
Manual del dev c++
Manual del dev c++Manual del dev c++
Manual del dev c++
 
El tiempo
El tiempoEl tiempo
El tiempo
 
Brms best practices_2011_oct_final
Brms best practices_2011_oct_finalBrms best practices_2011_oct_final
Brms best practices_2011_oct_final
 
Real-Time Event Processing
Real-Time Event ProcessingReal-Time Event Processing
Real-Time Event Processing
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 Capas
 
Real-Time Event & Stream Processing on MS Azure
Real-Time Event & Stream Processing on MS AzureReal-Time Event & Stream Processing on MS Azure
Real-Time Event & Stream Processing on MS Azure
 

Similar a Generador de código: análisis y generación

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
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmosnileyna
 
9º Algoritmos
9º Algoritmos9º Algoritmos
9º Algoritmosnileyna
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmosnileyna
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmosnileyna
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmosnileyna
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmosnileyna
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmosnileyna
 
Compiladores
CompiladoresCompiladores
Compiladoresdianajim
 
Grupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iGrupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iRossana Sosa
 
Terceraunidad 130505194734-phpapp01
Terceraunidad 130505194734-phpapp01Terceraunidad 130505194734-phpapp01
Terceraunidad 130505194734-phpapp01Victor Martinez
 
1.introduccion a la programación
1.introduccion a la programación1.introduccion a la programación
1.introduccion a la programaciónMarina Vintimilla
 

Similar a Generador de código: análisis y generación (20)

Algoritmos1
Algoritmos1Algoritmos1
Algoritmos1
 
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.
 
Algoritmos y diagramas de flujo
Algoritmos y diagramas de flujoAlgoritmos y diagramas de flujo
Algoritmos y diagramas de flujo
 
Traductores de lenguajes
Traductores   de    lenguajesTraductores   de    lenguajes
Traductores de lenguajes
 
Traductores de lenguajes
Traductores   de    lenguajesTraductores   de    lenguajes
Traductores de lenguajes
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
9º Algoritmos
9º Algoritmos9º Algoritmos
9º Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
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
 
Terceraunidad 130505194734-phpapp01
Terceraunidad 130505194734-phpapp01Terceraunidad 130505194734-phpapp01
Terceraunidad 130505194734-phpapp01
 
Tercera unidad
Tercera unidadTercera unidad
Tercera unidad
 
1.introduccion a la programación
1.introduccion a la programación1.introduccion a la programación
1.introduccion a la programación
 
Compilador (by BSMM)
Compilador    (by  BSMM)Compilador    (by  BSMM)
Compilador (by BSMM)
 

Generador de código: análisis y generación

  • 1. Generador de Código Daniel Alejandro Bulnes Reyna Matricula: 1441186 Clase: Martes M1 Dra. Elisa Schaeffer
  • 2. Nos podemos referir a el lenguaje por el cual funcionan las computadoras, comprende un conjunto de instrucciones y datos a ser procesados automáticamente. Los códigos objeto provienen de códigos intermedios que se han creado por un programador, que como ya sabemos el código intermedio debe ser fácil de producir y fácil de traducir al programa objeto. Además debemos tener en cuenta las herramientas generadoras automáticas de código para un compilador, que estas trabajan basadas en un conjunto de reglas; estas reglas definen la traducción de las instrucciones del lenguaje intermedio al lenguaje de máquina. Para la generación de código, se busca en las reglas establecidas la proposición que coincida con la entrada actual; la entrada actual proviene de un árbol.
  • 3. Para crear el código objeto es necesario que el compilador reciba una entrada de caracteres, por lo general escrita por el programador; después el compilador realiza los análisis: léxico, sintáctico y semántico, para generar seguidamente el código intermedio, el código intermedio se genera con principios de búsqueda de patrones y aplicación de reglas. Después se hace la optimización del código intermedio; seguidamente se realiza la generación de código objeto en lenguaje de máquina.
  • 4. 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. Estas tareas las realiza el desarrollador una vez para una arquitectura especifica.