SlideShare una empresa de Scribd logo
1 de 4
ESCUELA DE INGENIERÍA EN SISTEMAS
TALLER DE COMPILADORES
NOMBRE: FRANKLIN PAZMIÑO
FECHA: 20/06/2019
Utilizandola herramientade búsquedade la Web,Investigarlossiguientestemas:
Herramientas para la construcción de procesadoresde lenguaje.
Aplicaciónde loslenguajes:
lenguaje ensamblador,oassembler(eninglésassemblylanguage ylaabreviaciónasm),esun
lenguaje de programaciónde bajonivel.Consiste enunconjuntode mnemónicosque
representaninstruccionesbásicasparaloscomputadores,microprocesadores,
microcontroladoresyotroscircuitosintegradosprogramables.
Normalmente lacreaciónde unprogramaejecutable (untípicoarchivo.exe paraWindowso
DOS) conllevadospasos.El primerpasose llamacompilación(propiamentedicho) ytraduce el
códigofuente escritoenunlenguaje de programaciónalmacenadoenunarchivoacódigoen
bajonivel (normalmenteencódigoobjeto,nodirectamentealenguaje máquina).
y Bison.
Esta herramientase usaenconsonanciacon laherramientaflex ysirve paraespecificar
analizadoressintácticos.De lamismaformaque flex tiene comobase lasexpresiones
regulares,laherramientabison
Flex buscaconcordanciasenun ficherode entradayejecutaaccionesasociadasaestas
expresiones.
Para instalarflex vamosadar clic derechoenel archivoque descargamosanteriormente y
seleccionamos“ejecutarcomoadministrador”ynosaparecerála siguienteventana:
Damos clicennexty nosaparecerá losiguiente:Escogemoslaopción“Iacceptthe agreement”
y damosclic ennexty nosaparecerála ventana:
Aquí escogemoslarutaen laque vamos a instalar.Paranuestrocaso ponemosenlaruta “C:
GnuWin32” y damosclic ensiguiente.Aquísolamentedamosclicensiguiente ynosaparecerá
losiguiente:
Dejamostodopredeterminadoydamosclicensiguiente,nosaparecerálosiguiente:Damos
clicen siguienteyporúltimonosaparecerá:
Finalmentedamoscliceninstall ylistohemosteminadode instalarFLEXINSTALACIÓN DE
BISON
Cuandoel escánergeneradoestáfuncionando,este analizasuentradabuscandocadenasque
concuerdenconcualquierade suspatrones.Si encuentramásde un emparejamiento,tomael
que empareje mástexto(parareglasde contextoposterior,se incluyelalongitudde laparte
posterior,inclusosi se devuelve alaentrada).
flex disponede unmecanismoparaactivarreglascondicionalmente.Cualquierreglacuyo
patrón se prefije con"<sc>" únicamente estaráactivacuandoel analizadorse encuentreenla
condiciónde arranque llamada"sc".Porejemplo,
`char *yytext'apuntaal textodel tokenactual.Este puede modificarseperonoalargarse (no
puede añadircaracteresal final).Si aparece ladirectivaespecial `%array'enlaprimerasección
de la descripcióndel analizador,entoncesyytextse declaraensulugarcomo `char
yytext[YYLMAX]',donde YYLMAXesladefinicionde unamacro que puede redefinirenla
primerasecciónsi nole gusta el valorpor defecto(generalmente 8KB).El usode `%array'
Al ejecutarel comandoflex nombre_fichero_fuente se crearáunficheroenC llamado
“lex.yy.c”.Si se compilaeste ficheroconlainstrucción“gcc lex.yy.c –lfl –onombre_ejecutable”
(-lfl indicaenlazarconla bibliotecade flex) se obtendrácomoresultadounficheroejecutable
llamadonombre_ejecutable).Unavezse ha creadoel ficheroejecutable se puedeejecutar
directamente.Flex esperaráque se introduzcatextoporlaentradaestándar(teclado) ylo
analizarácada vezque se pulse el retornode carro.Para terminarcon el análisisnormalmente
hay que pulsar-D.
Uno de losusosprincipalesde Flexescomoacompañante del analizadorde gramáticasBison
(o de Yacc). Los analizadoresBisonnecesitanunafunciónllamda‘yylex()’paradevolverlesel
siguiente tokende laentrada.Esafuncióndevuelve el tipodel próximotokenyademáspuede
ponercualquiervalorasociadoenlavariable global yylval.
Los símbolosterminalesde lagramáticase denominanenBisontokensydebendeclararseen
la secciónde definiciones.Porconvenciónse suelenescribirlostokensenmayúsculasylos
símbolosnoterminalesenminúsculas. Losnombresde lossímbolospuedencontenerletras,
dígitos(noal principio),subrayadosypuntos.
Una regla gramatical de Bisontiene lasiguiente formageneral:resultado:componentes...;
donde resultadoesel símbolonoterminal que describe estareglaycomponentessonlos
diversossímbolosterminalesynoterminalesque estánreunidosporestaregla.
La secciónde declaracionesde Bisonde unagramáticade Bisondefine lossímbolosutilizados
enla formulaciónde lagramáticay lostiposde datos de losvaloressemánticos.Todoslos
nombresde tokens(peronolostokensde carácter literal simple tal como‘+’y ‘*’) se deben
declarar.Los símbolosnoterminalesdebenserdeclaradossi necesitaespecificarel tipode
dato a utilizarparalosvaloressemánticos.
iade operadores
El fuente de Bisonse convierte enunafunciónenCllamadayyparse.Aquídescribimoslas
convencionesde interfazde yyparse ylasotrasfuncionesque éste necesitausar.Tengaen
cuentaque el analizadorutilizamuchosidentificadoresenCcomenzandocon‘yy’e ‘YY’ para
propósitointerno.
2 Ejemplosde la creación de un compiladorutilizandoFlexy Bison.
EJECUCIÓN PROGRAMA BISON

Más contenido relacionado

La actualidad más candente (19)

Presentación1
Presentación1Presentación1
Presentación1
 
Tipos de datos entrada y salida
Tipos de datos entrada y salidaTipos de datos entrada y salida
Tipos de datos entrada y salida
 
Bibliotecas o librerias_para_c_
Bibliotecas o librerias_para_c_Bibliotecas o librerias_para_c_
Bibliotecas o librerias_para_c_
 
Flex y Bison
Flex y BisonFlex y Bison
Flex y Bison
 
Herramientas flex y bison
Herramientas flex y bisonHerramientas flex y bison
Herramientas flex y bison
 
Java
JavaJava
Java
 
Vocabulario java isabella o'byrne paz 11 2
Vocabulario java isabella o'byrne paz 11 2Vocabulario java isabella o'byrne paz 11 2
Vocabulario java isabella o'byrne paz 11 2
 
Estructuras de control 1
Estructuras de control 1Estructuras de control 1
Estructuras de control 1
 
Compiladores - Flex y Bison
Compiladores - Flex y BisonCompiladores - Flex y Bison
Compiladores - Flex y Bison
 
Funciones de Cadenas/ Computación para ingenieros
Funciones de Cadenas/ Computación para ingenierosFunciones de Cadenas/ Computación para ingenieros
Funciones de Cadenas/ Computación para ingenieros
 
Procedimiento Para Utilizar Flex Y Bison
Procedimiento Para Utilizar Flex Y Bison Procedimiento Para Utilizar Flex Y Bison
Procedimiento Para Utilizar Flex Y Bison
 
Flex y bison
Flex y  bisonFlex y  bison
Flex y bison
 
Prolog file
Prolog fileProlog file
Prolog file
 
Informe interprete sencillo irony y c sharp
Informe interprete sencillo irony y c sharpInforme interprete sencillo irony y c sharp
Informe interprete sencillo irony y c sharp
 
Libreria c++
Libreria c++Libreria c++
Libreria c++
 
Creacion de scripts en linux
Creacion de scripts en linuxCreacion de scripts en linux
Creacion de scripts en linux
 
Dev c++
Dev c++Dev c++
Dev c++
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintactico
 
Bibliotecas o libreria de c++
Bibliotecas o libreria de c++Bibliotecas o libreria de c++
Bibliotecas o libreria de c++
 

Similar a Flex y bison (20)

Taller
TallerTaller
Taller
 
Trabajo flex byson
Trabajo flex bysonTrabajo flex byson
Trabajo flex byson
 
Compiladores iswi (parte 2)
Compiladores iswi (parte 2)Compiladores iswi (parte 2)
Compiladores iswi (parte 2)
 
Flex y bison
Flex y bisonFlex y bison
Flex y bison
 
Flex y bison
Flex y bisonFlex y bison
Flex y bison
 
Flex y Bison
Flex y BisonFlex y Bison
Flex y Bison
 
FLEX Y BISON
FLEX Y BISONFLEX Y BISON
FLEX Y BISON
 
Flex bison
Flex bisonFlex bison
Flex bison
 
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
 
COMPILADORES
COMPILADORESCOMPILADORES
COMPILADORES
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Flexybison
FlexybisonFlexybison
Flexybison
 
Flex ybison
Flex ybisonFlex ybison
Flex ybison
 
Flex bison
Flex bisonFlex bison
Flex bison
 
Flexybison
FlexybisonFlexybison
Flexybison
 
Flex y-bison
Flex y-bisonFlex y-bison
Flex y-bison
 
Taller compiladores conceptos
Taller compiladores conceptosTaller compiladores conceptos
Taller compiladores conceptos
 
Flex y Byson
Flex y BysonFlex y Byson
Flex y Byson
 
Flex y bison
Flex y bisonFlex y bison
Flex y bison
 
H:\compiladores
H:\compiladoresH:\compiladores
H:\compiladores
 

Más de Franklin Pazmiño

Realizar un ataque de phising
Realizar un ataque de phisingRealizar un ataque de phising
Realizar un ataque de phisingFranklin Pazmiño
 
Instalación Kali Linux y Windows 7
Instalación Kali Linux y Windows 7Instalación Kali Linux y Windows 7
Instalación Kali Linux y Windows 7Franklin Pazmiño
 
Recuperación archivos y adquisición memoria ram.
Recuperación archivos y adquisición memoria ram.Recuperación archivos y adquisición memoria ram.
Recuperación archivos y adquisición memoria ram.Franklin Pazmiño
 
Análisis de metadatos y cookies de navegación
Análisis de metadatos y cookies de navegaciónAnálisis de metadatos y cookies de navegación
Análisis de metadatos y cookies de navegaciónFranklin Pazmiño
 
Recuperación de ficheros eliminados
Recuperación de ficheros eliminadosRecuperación de ficheros eliminados
Recuperación de ficheros eliminadosFranklin Pazmiño
 
Principios análisis Forense
Principios análisis Forense Principios análisis Forense
Principios análisis Forense Franklin Pazmiño
 
Análisis ley de protección datos personales en Ecuador
Análisis ley de protección datos personales en EcuadorAnálisis ley de protección datos personales en Ecuador
Análisis ley de protección datos personales en EcuadorFranklin Pazmiño
 
Aplicación de desarrollo firma electrónica
Aplicación de desarrollo firma electrónicaAplicación de desarrollo firma electrónica
Aplicación de desarrollo firma electrónicaFranklin Pazmiño
 
La firma electronica_en_Ecuador_y_el_certificado_de_firma_electronica
La firma electronica_en_Ecuador_y_el_certificado_de_firma_electronicaLa firma electronica_en_Ecuador_y_el_certificado_de_firma_electronica
La firma electronica_en_Ecuador_y_el_certificado_de_firma_electronicaFranklin Pazmiño
 
Clasificación de contratos informáticos
Clasificación de contratos informáticosClasificación de contratos informáticos
Clasificación de contratos informáticosFranklin Pazmiño
 
Derecho Constitucional del Ecuador
Derecho Constitucional del Ecuador Derecho Constitucional del Ecuador
Derecho Constitucional del Ecuador Franklin Pazmiño
 

Más de Franklin Pazmiño (14)

Realizar un ataque de phising
Realizar un ataque de phisingRealizar un ataque de phising
Realizar un ataque de phising
 
Instalación Kali Linux y Windows 7
Instalación Kali Linux y Windows 7Instalación Kali Linux y Windows 7
Instalación Kali Linux y Windows 7
 
Recuperación archivos y adquisición memoria ram.
Recuperación archivos y adquisición memoria ram.Recuperación archivos y adquisición memoria ram.
Recuperación archivos y adquisición memoria ram.
 
Análisis de metadatos y cookies de navegación
Análisis de metadatos y cookies de navegaciónAnálisis de metadatos y cookies de navegación
Análisis de metadatos y cookies de navegación
 
Recuperación de ficheros eliminados
Recuperación de ficheros eliminadosRecuperación de ficheros eliminados
Recuperación de ficheros eliminados
 
Principios análisis Forense
Principios análisis Forense Principios análisis Forense
Principios análisis Forense
 
Análisis Forense
Análisis Forense Análisis Forense
Análisis Forense
 
El perito informático
El perito informáticoEl perito informático
El perito informático
 
Análisis ley de protección datos personales en Ecuador
Análisis ley de protección datos personales en EcuadorAnálisis ley de protección datos personales en Ecuador
Análisis ley de protección datos personales en Ecuador
 
Aplicación de desarrollo firma electrónica
Aplicación de desarrollo firma electrónicaAplicación de desarrollo firma electrónica
Aplicación de desarrollo firma electrónica
 
La firma electronica_en_Ecuador_y_el_certificado_de_firma_electronica
La firma electronica_en_Ecuador_y_el_certificado_de_firma_electronicaLa firma electronica_en_Ecuador_y_el_certificado_de_firma_electronica
La firma electronica_en_Ecuador_y_el_certificado_de_firma_electronica
 
Clasificación de contratos informáticos
Clasificación de contratos informáticosClasificación de contratos informáticos
Clasificación de contratos informáticos
 
Constitución del ecuador
Constitución del ecuadorConstitución del ecuador
Constitución del ecuador
 
Derecho Constitucional del Ecuador
Derecho Constitucional del Ecuador Derecho Constitucional del Ecuador
Derecho Constitucional del Ecuador
 

Último

OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSYadi Campos
 
Valoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVValoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVGiustinoAdesso1
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxlupitavic
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfenelcielosiempre
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosJonathanCovena1
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfPaolaRopero2
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfMaritzaRetamozoVera
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Alejandrino Halire Ccahuana
 
PIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesPIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesYanirisBarcelDelaHoz
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdfenelcielosiempre
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioELIASAURELIOCHAVEZCA1
 

Último (20)

OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
Valoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVValoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCV
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdf
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficios
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
PIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesPIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonables
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdf
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 

Flex y bison

  • 1. ESCUELA DE INGENIERÍA EN SISTEMAS TALLER DE COMPILADORES NOMBRE: FRANKLIN PAZMIÑO FECHA: 20/06/2019 Utilizandola herramientade búsquedade la Web,Investigarlossiguientestemas: Herramientas para la construcción de procesadoresde lenguaje. Aplicaciónde loslenguajes: lenguaje ensamblador,oassembler(eninglésassemblylanguage ylaabreviaciónasm),esun lenguaje de programaciónde bajonivel.Consiste enunconjuntode mnemónicosque representaninstruccionesbásicasparaloscomputadores,microprocesadores, microcontroladoresyotroscircuitosintegradosprogramables. Normalmente lacreaciónde unprogramaejecutable (untípicoarchivo.exe paraWindowso DOS) conllevadospasos.El primerpasose llamacompilación(propiamentedicho) ytraduce el códigofuente escritoenunlenguaje de programaciónalmacenadoenunarchivoacódigoen bajonivel (normalmenteencódigoobjeto,nodirectamentealenguaje máquina). y Bison. Esta herramientase usaenconsonanciacon laherramientaflex ysirve paraespecificar analizadoressintácticos.De lamismaformaque flex tiene comobase lasexpresiones regulares,laherramientabison Flex buscaconcordanciasenun ficherode entradayejecutaaccionesasociadasaestas expresiones. Para instalarflex vamosadar clic derechoenel archivoque descargamosanteriormente y seleccionamos“ejecutarcomoadministrador”ynosaparecerála siguienteventana: Damos clicennexty nosaparecerá losiguiente:Escogemoslaopción“Iacceptthe agreement” y damosclic ennexty nosaparecerála ventana: Aquí escogemoslarutaen laque vamos a instalar.Paranuestrocaso ponemosenlaruta “C: GnuWin32” y damosclic ensiguiente.Aquísolamentedamosclicensiguiente ynosaparecerá losiguiente: Dejamostodopredeterminadoydamosclicensiguiente,nosaparecerálosiguiente:Damos clicen siguienteyporúltimonosaparecerá: Finalmentedamoscliceninstall ylistohemosteminadode instalarFLEXINSTALACIÓN DE BISON
  • 2. Cuandoel escánergeneradoestáfuncionando,este analizasuentradabuscandocadenasque concuerdenconcualquierade suspatrones.Si encuentramásde un emparejamiento,tomael que empareje mástexto(parareglasde contextoposterior,se incluyelalongitudde laparte posterior,inclusosi se devuelve alaentrada). flex disponede unmecanismoparaactivarreglascondicionalmente.Cualquierreglacuyo patrón se prefije con"<sc>" únicamente estaráactivacuandoel analizadorse encuentreenla condiciónde arranque llamada"sc".Porejemplo, `char *yytext'apuntaal textodel tokenactual.Este puede modificarseperonoalargarse (no puede añadircaracteresal final).Si aparece ladirectivaespecial `%array'enlaprimerasección de la descripcióndel analizador,entoncesyytextse declaraensulugarcomo `char yytext[YYLMAX]',donde YYLMAXesladefinicionde unamacro que puede redefinirenla primerasecciónsi nole gusta el valorpor defecto(generalmente 8KB).El usode `%array' Al ejecutarel comandoflex nombre_fichero_fuente se crearáunficheroenC llamado “lex.yy.c”.Si se compilaeste ficheroconlainstrucción“gcc lex.yy.c –lfl –onombre_ejecutable” (-lfl indicaenlazarconla bibliotecade flex) se obtendrácomoresultadounficheroejecutable llamadonombre_ejecutable).Unavezse ha creadoel ficheroejecutable se puedeejecutar directamente.Flex esperaráque se introduzcatextoporlaentradaestándar(teclado) ylo analizarácada vezque se pulse el retornode carro.Para terminarcon el análisisnormalmente hay que pulsar-D.
  • 3. Uno de losusosprincipalesde Flexescomoacompañante del analizadorde gramáticasBison (o de Yacc). Los analizadoresBisonnecesitanunafunciónllamda‘yylex()’paradevolverlesel siguiente tokende laentrada.Esafuncióndevuelve el tipodel próximotokenyademáspuede ponercualquiervalorasociadoenlavariable global yylval. Los símbolosterminalesde lagramáticase denominanenBisontokensydebendeclararseen la secciónde definiciones.Porconvenciónse suelenescribirlostokensenmayúsculasylos símbolosnoterminalesenminúsculas. Losnombresde lossímbolospuedencontenerletras, dígitos(noal principio),subrayadosypuntos. Una regla gramatical de Bisontiene lasiguiente formageneral:resultado:componentes...; donde resultadoesel símbolonoterminal que describe estareglaycomponentessonlos diversossímbolosterminalesynoterminalesque estánreunidosporestaregla. La secciónde declaracionesde Bisonde unagramáticade Bisondefine lossímbolosutilizados enla formulaciónde lagramáticay lostiposde datos de losvaloressemánticos.Todoslos nombresde tokens(peronolostokensde carácter literal simple tal como‘+’y ‘*’) se deben declarar.Los símbolosnoterminalesdebenserdeclaradossi necesitaespecificarel tipode dato a utilizarparalosvaloressemánticos. iade operadores
  • 4. El fuente de Bisonse convierte enunafunciónenCllamadayyparse.Aquídescribimoslas convencionesde interfazde yyparse ylasotrasfuncionesque éste necesitausar.Tengaen cuentaque el analizadorutilizamuchosidentificadoresenCcomenzandocon‘yy’e ‘YY’ para propósitointerno. 2 Ejemplosde la creación de un compiladorutilizandoFlexy Bison. EJECUCIÓN PROGRAMA BISON