SlideShare una empresa de Scribd logo
1 de 12
JAIRO LOPEZ PARRA
JOSE LASTRA MARTINEZ
UNIVESIDAD REMINGTON
INGENIERIA DE SISITEMAS Vll
UN COMPILADOR ES UN PROGRAMA INFORMÁTICO QUE TRADUCE UN PROGRAMA QUE HA SIDO
ESCRITO EN UN LENGUAJE DE PROGRAMACIÓN A UN LENGUAJE COMÚN, REÚNE DIVERSOS
ELEMENTOS O FRAGMENTOS EN UNA MISMA UNIDAD. USUALMENTE LENGUAJE DE MÁQUINA,
AUNQUE TAMBIÉN PUEDE SER TRADUCIDO A UN CÓDIGO INTERMEDIO (BYTECODE) O A TEXTO.
ESTE PROCESO DE TRADUCCIÓN SE CONOCE COMO COMPILACIÓN, COMPILAR CONSISTE EN
TRADUCIR UN PROGRAMA ESCRITO EN UN CIERTO LENGUAJE A OTRO.
QUE ES UN COMPILADOR
TIPOS DE COMPILADOR
1. COMPILADOR DE UNA SOLA PASADA
2. COMPILDOR DE MULTIPLES PASADAS
3. METACOMPILADOR
4. DESCOMPILADOR
5. COMPILADOR INTERPRETE
6. COMPILADOR CRUZADO
COMPILADOR DE UNA SOLA PASADA
VENTAJAS
1. ES FACIL DE IMPLEMENTAR
2. GENERA POCA ACTIVIDAD DE ENTRADA
Y SALIDA
3. EL CODIGO DE UN PROCEDIMIENTO SE
COMPILA EN MEMORIA Y ESCRIBE
COMO UNA UNIDAD A LA MEMORIA
SECUNDARIA
DESVENTAJAS
1. LIMITACIONES EN LA CALIDAD DEL CODIGO
2. MUCHA NECESIDAD DE MEMORIA
Examinan solo una vez el código fuente para generar el código
objeto.
COMPILADOR DE MULTIPLES
PASADAS1. REQUIERE DE PASOS INTERMEDIOS (CÓDIGO INTERMEDIO) ANTES DE GENERAR EL CÓDIGO
OBJETO FINAL.
2. ENTRE MENOS PASADAS MENOR TIEMPO DE COMPILACIÓN, SIN EMBARGO MÁS PASADAS
PUEDEN GENERAR CÓDIGO OBJETO MÁS EFICIENTE.
3. LA TABLA DE SÍMBOLOS SE CREA DURANTE EL ANÁLISIS LEXICO Y SINTACTICO
4. EL ANALIZADOR LÉXICO SEPARA EL PROGRAMA EN TOKEN, QUE COMPARA LAS PALABRAS
RESERVADAS, Y SI EL TOKEN NO ES UNA PALABRA RESERVADA SE ASUME QUE ES UN
IDENTIFICADOR Y DURANTE EL ANÁLISIS SINTÁCTICO SE AÑADE A LA TABLA
VENTAJAS
1. GENERA UN CODIGO MAS EFICIENTE
DESVENTAJAS
1. UTILIZA MAS TIEMPO EN COMPILAR
2. UTILIZA MAS RECURSOS – PASOS INTERMEDIOS
METACOMPILADOR
METACOMPILADOR. EL METACOMPILADOR ES SINÓNIMO DE COMPILADOR DE COMPILADORES Y
SE REFIERE A UN PROGRAMA QUE RECIBE COMO ENTRADA LAS ESPECIFICACIONES DEL LENGUAJE
PARA EL QUE SE DESEA OBTENER UN COMPILADOR Y GENERA COMO SALIDA EL COMPILADOR
PARA ESE LENGUAJE.
POR LO REGULAR HAY DOS TIPOS DE METACOMPILADORES, LOS QUE TRABAJAN CON EXPRESIONES
REGULARES Y AQUELLOS QUE LO HACEN CON GRAMÁTICAS LIBRES DE CONTEXTO.
EJEMPLOS CLÁSICOS SON LEX (GENERADOR DE ANALIZADORES LÉXICOS) Y YACC (GENERADOR DE
ANALIZADORES SINTÁCTICOS).
DESCOMPILAD
ORREALIZA UNA TAREA DE TRADUCCIÓN INVERSA, ES DECIR, VA DEL CÓDIGO MÁQUINA AL
LENGUAJE DE ALTO NIVEL.
ES RELATIVAMENTE SENCILLO CUANDO SE TRATA DE IR A CÓDIGO ENSAMBLADOR O
MACRO ENSAMBLADOR, PERO NO CUANDO SE QUIERE LLEGAR A UN LENGUAJE DE ALTO
NIVEL.
1. DCC Decompiler
2. Boomerang Decompiler Project
3. Reverse Engineering Compiler (REC)
4. ExeToC
5. code-dump
TIPOS DE DESCOMPILADOR
COMPILADORES
INTERPRETES1. REALIZAN DOS FASES: LA FASE DE COMPILACIÓN Y LA FASE DE
INTERPRETACIÓN.
2. LA FASE DE COMPILACIÓN TRADUCE LA ENTRADA EN UNA
REPRESENTACIÓN INTERMEDIA POR UNA ÚNICA VEZ.
3. LA FASE DE INTERPRETACIÓN PARTE DE LA REPRESENTACIÓN
GENERADA POR LA PRIMERA FASE PARA LA EJECUCIÓN DEL
PROGRAMA.
UN INTÉRPRETE TRADUCE INSTRUCCIONES DE ALTO NIVEL EN
UNA FORMA INTERMEDIA PARA SER EJECUTADO. EN
CONTRASTE, UN COMPILADOR, TRADUCE INSTRUCCIONES DE
ALTO NIVEL DIRECTAMENTE EN LENGUAJE DE MÁQUINA. EL
INTÉRPRETE TRADUCE UN PROGRAMA LÍNEA A LÍNEA MIENTRAS
QUE EL COMPILADOR TRADUCE EL PROGRAMA ENTERO Y
LUEGO LO EJECUTA.
VENTAJAS DEL COMPILADOR
1. SOLO SE COMPILA 1 VEZ
2. LA EJECUCION ES MAS RAPIDA
3. OPTIMIZACION DE CODIGO E
INFORMACION DE ERROR MAS
VENTAJAS DEL INTERPRETE
1. MENOR COSTE ESPACIAL
2. MAYOR INTERACTIVIDAD EN DESARROLLO
3. AÑADIR CODIGO EN “CLIENTE”.
COMPILADORES
CRUZADOSSURGEN COMO SOLUCIÓN AL PROBLEMA
DE DESARROLLAR UN PRIMER
COMPILADOR PARA UNA NUEVA
ARQUITECTURA.
DADO QUE EL DESARROLLO DE
COMPILADORES ES UNA TAREA
COMPLEJA, RESULTA MÁS FÁCIL
CONSTRUIRLOS SOBRE UNA MÁQUINA
QUE YA DISPONGA DE HERRAMIENTAS
DE SOFTWARE.
SE DENOMINA COMPILADOR CRUZADO A
UN COMPILADOR QUE SE EJECUTA EN
UNA MÁQUINA PERO EL CÓDIGO OBJETO
ES PARA OTRA MÁQUINA.
COMPILADORES UNIREMINGTON

Más contenido relacionado

La actualidad más candente

La actualidad más candente (19)

Decompilador y metacompilador
Decompilador y metacompiladorDecompilador y metacompilador
Decompilador y metacompilador
 
Cap2 compiladores
Cap2 compiladoresCap2 compiladores
Cap2 compiladores
 
Trabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraTrabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandra
 
Bootstrapping
BootstrappingBootstrapping
Bootstrapping
 
Pasadas multiples
Pasadas       multiplesPasadas       multiples
Pasadas multiples
 
Los compiladores erika y carolina
Los compiladores erika y carolinaLos compiladores erika y carolina
Los compiladores erika y carolina
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
UNIDAD 2 PROGRAMACIÓN BASICA
UNIDAD 2 PROGRAMACIÓN BASICAUNIDAD 2 PROGRAMACIÓN BASICA
UNIDAD 2 PROGRAMACIÓN BASICA
 
1. que es programacion
1. que es programacion1. que es programacion
1. que es programacion
 
Proyecto fernando compiladores 1
Proyecto fernando compiladores 1Proyecto fernando compiladores 1
Proyecto fernando compiladores 1
 
Temario lenguaje ensamblador
Temario lenguaje ensambladorTemario lenguaje ensamblador
Temario lenguaje ensamblador
 
LENGUAJE ENSAMBLADOR
LENGUAJE ENSAMBLADORLENGUAJE ENSAMBLADOR
LENGUAJE ENSAMBLADOR
 
Arquitecturas de ordenadores y compiladores cruzados
Arquitecturas de ordenadores y compiladores cruzadosArquitecturas de ordenadores y compiladores cruzados
Arquitecturas de ordenadores y compiladores cruzados
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
 
Traductor y su estructura
Traductor y su estructuraTraductor y su estructura
Traductor y su estructura
 
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
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Traductores
TraductoresTraductores
Traductores
 
Presentacion de procesadores de lenguajes
Presentacion de procesadores de lenguajesPresentacion de procesadores de lenguajes
Presentacion de procesadores de lenguajes
 

Similar a COMPILADORES UNIREMINGTON

Trabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraTrabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraAlexandraMolinaSanchez
 
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
 
Compiladores Yeli Rojas
Compiladores Yeli RojasCompiladores Yeli Rojas
Compiladores Yeli RojasYeli Rojas
 
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
 
TALLER ESTRATEGIA DE APOYO INDIVIDUAL - JUAN DIEGO PIEDRAHITA ALVAREZ.docx
TALLER ESTRATEGIA DE APOYO INDIVIDUAL - JUAN DIEGO PIEDRAHITA ALVAREZ.docxTALLER ESTRATEGIA DE APOYO INDIVIDUAL - JUAN DIEGO PIEDRAHITA ALVAREZ.docx
TALLER ESTRATEGIA DE APOYO INDIVIDUAL - JUAN DIEGO PIEDRAHITA ALVAREZ.docxJUANDIPA1
 
Tema 1.3.- Programación
Tema 1.3.- ProgramaciónTema 1.3.- Programación
Tema 1.3.- ProgramaciónYenny Salazar
 
Actividad 3
Actividad 3Actividad 3
Actividad 3maryr_
 
Introduccion a los compiladores
Introduccion a los compiladoresIntroduccion a los compiladores
Introduccion a los compiladoresAlexander Campues
 
TALLER DE ESTRATEGIAS DE APOYO INVIBIDUAL.pdf
TALLER DE ESTRATEGIAS DE APOYO INVIBIDUAL.pdfTALLER DE ESTRATEGIAS DE APOYO INVIBIDUAL.pdf
TALLER DE ESTRATEGIAS DE APOYO INVIBIDUAL.pdfangelvillota1
 
Programacion de sistemas
Programacion de sistemasProgramacion de sistemas
Programacion de sistemasYoly Garcia
 
Jose Valera Hablemos de Lenguaje
Jose Valera Hablemos de LenguajeJose Valera Hablemos de Lenguaje
Jose Valera Hablemos de LenguajeJose Valera
 

Similar a COMPILADORES UNIREMINGTON (20)

Trabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraTrabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandra
 
1.4 ensambladores y compiladores
1.4 ensambladores y compiladores1.4 ensambladores y compiladores
1.4 ensambladores y compiladores
 
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
 
Compiladores Yeli Rojas
Compiladores Yeli RojasCompiladores Yeli Rojas
Compiladores Yeli Rojas
 
Investigacion sobre traductor, interprete y compilador
Investigacion sobre traductor, interprete y compilador   Investigacion sobre traductor, interprete y compilador
Investigacion sobre traductor, interprete y compilador
 
TALLER ESTRATEGIA DE APOYO INDIVIDUAL - JUAN DIEGO PIEDRAHITA ALVAREZ.docx
TALLER ESTRATEGIA DE APOYO INDIVIDUAL - JUAN DIEGO PIEDRAHITA ALVAREZ.docxTALLER ESTRATEGIA DE APOYO INDIVIDUAL - JUAN DIEGO PIEDRAHITA ALVAREZ.docx
TALLER ESTRATEGIA DE APOYO INDIVIDUAL - JUAN DIEGO PIEDRAHITA ALVAREZ.docx
 
Tema 1.3.- Programación
Tema 1.3.- ProgramaciónTema 1.3.- Programación
Tema 1.3.- Programación
 
Informática
InformáticaInformática
Informática
 
Informática
InformáticaInformática
Informática
 
Actividad 3
Actividad 3Actividad 3
Actividad 3
 
Unidad I Conceptos Básicos
Unidad I Conceptos BásicosUnidad I Conceptos Básicos
Unidad I Conceptos Básicos
 
Introduccion a los compiladores
Introduccion a los compiladoresIntroduccion a los compiladores
Introduccion a los compiladores
 
1 4
1 41 4
1 4
 
Diapositivas fundamentos-de-programacion
Diapositivas fundamentos-de-programacionDiapositivas fundamentos-de-programacion
Diapositivas fundamentos-de-programacion
 
Resumencap1 carmen vargas_jeremycamacho
Resumencap1 carmen vargas_jeremycamachoResumencap1 carmen vargas_jeremycamacho
Resumencap1 carmen vargas_jeremycamacho
 
TALLER DE ESTRATEGIAS DE APOYO INVIBIDUAL.pdf
TALLER DE ESTRATEGIAS DE APOYO INVIBIDUAL.pdfTALLER DE ESTRATEGIAS DE APOYO INVIBIDUAL.pdf
TALLER DE ESTRATEGIAS DE APOYO INVIBIDUAL.pdf
 
Traductores de lenguajes
Traductores   de    lenguajesTraductores   de    lenguajes
Traductores de lenguajes
 
Traductores de lenguajes
Traductores   de    lenguajesTraductores   de    lenguajes
Traductores de lenguajes
 
Programacion de sistemas
Programacion de sistemasProgramacion de sistemas
Programacion de sistemas
 
Jose Valera Hablemos de Lenguaje
Jose Valera Hablemos de LenguajeJose Valera Hablemos de Lenguaje
Jose Valera Hablemos de Lenguaje
 

Más de jairito0922

LIMITES AL INFINITO
LIMITES AL INFINITOLIMITES AL INFINITO
LIMITES AL INFINITOjairito0922
 
Corporacion universitaria remigton
Corporacion universitaria remigtonCorporacion universitaria remigton
Corporacion universitaria remigtonjairito0922
 
Corporacion universitaria remigton
Corporacion universitaria remigtonCorporacion universitaria remigton
Corporacion universitaria remigtonjairito0922
 
Corporacion universitaria remigton
Corporacion universitaria remigtonCorporacion universitaria remigton
Corporacion universitaria remigtonjairito0922
 

Más de jairito0922 (8)

Bases de datos
Bases de datosBases de datos
Bases de datos
 
LIMITES AL INFINITO
LIMITES AL INFINITOLIMITES AL INFINITO
LIMITES AL INFINITO
 
Derivada
DerivadaDerivada
Derivada
 
Calculo
CalculoCalculo
Calculo
 
Trabajo jairo
Trabajo jairoTrabajo jairo
Trabajo jairo
 
Corporacion universitaria remigton
Corporacion universitaria remigtonCorporacion universitaria remigton
Corporacion universitaria remigton
 
Corporacion universitaria remigton
Corporacion universitaria remigtonCorporacion universitaria remigton
Corporacion universitaria remigton
 
Corporacion universitaria remigton
Corporacion universitaria remigtonCorporacion universitaria remigton
Corporacion universitaria remigton
 

Último

origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioELIASAURELIOCHAVEZCA1
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesMarisolMartinez707897
 
semana 4 9NO Estudios sociales.pptxnnnn
semana 4  9NO Estudios sociales.pptxnnnnsemana 4  9NO Estudios sociales.pptxnnnn
semana 4 9NO Estudios sociales.pptxnnnnlitzyleovaldivieso
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalJonathanCovena1
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxlclcarmen
 
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.pptFUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.pptNancyMoreiraMora1
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIAFabiolaGarcia751855
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxiemerc2024
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfapunteshistoriamarmo
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfMercedes Gonzalez
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxroberthirigoinvasque
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICAÁngel Encinas
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docxEliaHernndez7
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfJonathanCovena1
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Katherine Concepcion Gonzalez
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxFernando Solis
 

Último (20)

origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
semana 4 9NO Estudios sociales.pptxnnnn
semana 4  9NO Estudios sociales.pptxnnnnsemana 4  9NO Estudios sociales.pptxnnnn
semana 4 9NO Estudios sociales.pptxnnnn
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración Ambiental
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 
Power Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptxPower Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptx
 
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.pptFUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
Lecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigosLecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigos
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdf
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 

COMPILADORES UNIREMINGTON

  • 1. JAIRO LOPEZ PARRA JOSE LASTRA MARTINEZ UNIVESIDAD REMINGTON INGENIERIA DE SISITEMAS Vll
  • 2.
  • 3. UN COMPILADOR ES UN PROGRAMA INFORMÁTICO QUE TRADUCE UN PROGRAMA QUE HA SIDO ESCRITO EN UN LENGUAJE DE PROGRAMACIÓN A UN LENGUAJE COMÚN, REÚNE DIVERSOS ELEMENTOS O FRAGMENTOS EN UNA MISMA UNIDAD. USUALMENTE LENGUAJE DE MÁQUINA, AUNQUE TAMBIÉN PUEDE SER TRADUCIDO A UN CÓDIGO INTERMEDIO (BYTECODE) O A TEXTO. ESTE PROCESO DE TRADUCCIÓN SE CONOCE COMO COMPILACIÓN, COMPILAR CONSISTE EN TRADUCIR UN PROGRAMA ESCRITO EN UN CIERTO LENGUAJE A OTRO. QUE ES UN COMPILADOR TIPOS DE COMPILADOR 1. COMPILADOR DE UNA SOLA PASADA 2. COMPILDOR DE MULTIPLES PASADAS 3. METACOMPILADOR 4. DESCOMPILADOR 5. COMPILADOR INTERPRETE 6. COMPILADOR CRUZADO
  • 4.
  • 5. COMPILADOR DE UNA SOLA PASADA VENTAJAS 1. ES FACIL DE IMPLEMENTAR 2. GENERA POCA ACTIVIDAD DE ENTRADA Y SALIDA 3. EL CODIGO DE UN PROCEDIMIENTO SE COMPILA EN MEMORIA Y ESCRIBE COMO UNA UNIDAD A LA MEMORIA SECUNDARIA DESVENTAJAS 1. LIMITACIONES EN LA CALIDAD DEL CODIGO 2. MUCHA NECESIDAD DE MEMORIA Examinan solo una vez el código fuente para generar el código objeto.
  • 6. COMPILADOR DE MULTIPLES PASADAS1. REQUIERE DE PASOS INTERMEDIOS (CÓDIGO INTERMEDIO) ANTES DE GENERAR EL CÓDIGO OBJETO FINAL. 2. ENTRE MENOS PASADAS MENOR TIEMPO DE COMPILACIÓN, SIN EMBARGO MÁS PASADAS PUEDEN GENERAR CÓDIGO OBJETO MÁS EFICIENTE. 3. LA TABLA DE SÍMBOLOS SE CREA DURANTE EL ANÁLISIS LEXICO Y SINTACTICO 4. EL ANALIZADOR LÉXICO SEPARA EL PROGRAMA EN TOKEN, QUE COMPARA LAS PALABRAS RESERVADAS, Y SI EL TOKEN NO ES UNA PALABRA RESERVADA SE ASUME QUE ES UN IDENTIFICADOR Y DURANTE EL ANÁLISIS SINTÁCTICO SE AÑADE A LA TABLA VENTAJAS 1. GENERA UN CODIGO MAS EFICIENTE DESVENTAJAS 1. UTILIZA MAS TIEMPO EN COMPILAR 2. UTILIZA MAS RECURSOS – PASOS INTERMEDIOS
  • 7. METACOMPILADOR METACOMPILADOR. EL METACOMPILADOR ES SINÓNIMO DE COMPILADOR DE COMPILADORES Y SE REFIERE A UN PROGRAMA QUE RECIBE COMO ENTRADA LAS ESPECIFICACIONES DEL LENGUAJE PARA EL QUE SE DESEA OBTENER UN COMPILADOR Y GENERA COMO SALIDA EL COMPILADOR PARA ESE LENGUAJE. POR LO REGULAR HAY DOS TIPOS DE METACOMPILADORES, LOS QUE TRABAJAN CON EXPRESIONES REGULARES Y AQUELLOS QUE LO HACEN CON GRAMÁTICAS LIBRES DE CONTEXTO. EJEMPLOS CLÁSICOS SON LEX (GENERADOR DE ANALIZADORES LÉXICOS) Y YACC (GENERADOR DE ANALIZADORES SINTÁCTICOS).
  • 8. DESCOMPILAD ORREALIZA UNA TAREA DE TRADUCCIÓN INVERSA, ES DECIR, VA DEL CÓDIGO MÁQUINA AL LENGUAJE DE ALTO NIVEL. ES RELATIVAMENTE SENCILLO CUANDO SE TRATA DE IR A CÓDIGO ENSAMBLADOR O MACRO ENSAMBLADOR, PERO NO CUANDO SE QUIERE LLEGAR A UN LENGUAJE DE ALTO NIVEL. 1. DCC Decompiler 2. Boomerang Decompiler Project 3. Reverse Engineering Compiler (REC) 4. ExeToC 5. code-dump TIPOS DE DESCOMPILADOR
  • 9. COMPILADORES INTERPRETES1. REALIZAN DOS FASES: LA FASE DE COMPILACIÓN Y LA FASE DE INTERPRETACIÓN. 2. LA FASE DE COMPILACIÓN TRADUCE LA ENTRADA EN UNA REPRESENTACIÓN INTERMEDIA POR UNA ÚNICA VEZ. 3. LA FASE DE INTERPRETACIÓN PARTE DE LA REPRESENTACIÓN GENERADA POR LA PRIMERA FASE PARA LA EJECUCIÓN DEL PROGRAMA. UN INTÉRPRETE TRADUCE INSTRUCCIONES DE ALTO NIVEL EN UNA FORMA INTERMEDIA PARA SER EJECUTADO. EN CONTRASTE, UN COMPILADOR, TRADUCE INSTRUCCIONES DE ALTO NIVEL DIRECTAMENTE EN LENGUAJE DE MÁQUINA. EL INTÉRPRETE TRADUCE UN PROGRAMA LÍNEA A LÍNEA MIENTRAS QUE EL COMPILADOR TRADUCE EL PROGRAMA ENTERO Y LUEGO LO EJECUTA.
  • 10. VENTAJAS DEL COMPILADOR 1. SOLO SE COMPILA 1 VEZ 2. LA EJECUCION ES MAS RAPIDA 3. OPTIMIZACION DE CODIGO E INFORMACION DE ERROR MAS VENTAJAS DEL INTERPRETE 1. MENOR COSTE ESPACIAL 2. MAYOR INTERACTIVIDAD EN DESARROLLO 3. AÑADIR CODIGO EN “CLIENTE”.
  • 11. COMPILADORES CRUZADOSSURGEN COMO SOLUCIÓN AL PROBLEMA DE DESARROLLAR UN PRIMER COMPILADOR PARA UNA NUEVA ARQUITECTURA. DADO QUE EL DESARROLLO DE COMPILADORES ES UNA TAREA COMPLEJA, RESULTA MÁS FÁCIL CONSTRUIRLOS SOBRE UNA MÁQUINA QUE YA DISPONGA DE HERRAMIENTAS DE SOFTWARE. SE DENOMINA COMPILADOR CRUZADO A UN COMPILADOR QUE SE EJECUTA EN UNA MÁQUINA PERO EL CÓDIGO OBJETO ES PARA OTRA MÁQUINA.