SlideShare una empresa de Scribd logo
1 de 13
Descargar para leer sin conexión
PONTIFICIA UIVERSIDAD CATÓLICA DEL ECUADOR
SEDE IBARRA
ESCUELA DE INGENIERÍA
1. DATOS INFORMATIVOS
1.1 Nombre: Edwin Valenzuela
1.2 Carrera: Ingeniería en Sistemas
1.3 Nivel: 5 Nivel
1.4 Tema: Instalación de Flex y Bison
1.5 Fecha: 2016/06/21
2. DESCRIPCION
APLICACIÓN DE LOS LENGUAJES
Los lenguajes de programación hoy en día tienen una infinidad de aplicaciones, básicamente
cualquier objeto electrónico tiene cierto grado de programación. Algunos de los más comunes
son C++ y JAVA, también existe HTML, HTTP, XML, XAML y C#, este último
actualmente es el más utilizado en todos los dispositivos y redes basados en MICROSOFT
(Xbox 350, Windows Mobile, Windows Phone, Windows Cloud, Zune, etc.). Ya que los
lenguajes de programación son informáticamente un puente entre el Hardware y el Software
estos permiten que las computadoras puedan establecer conexión con un celular, una cámara
o una consola portátil de videojuego. Otra de las aplicaciones de los lenguajes de
programación son las matemáticas como las calculadoras, cajas registradoras, cajeros
automáticos, por solo mencionar algunos ejemplos sencillos. Existen también niveles de
programación mucho más complejos como los videojuegos o los pilotos automáticos de los
aviones comerciales o las máquinas de juego de los casinos que siguen un patrón de
probabilidad a partir de un arreglo de números al azar establecido por una programación
numérica. La robótica es la combinación de mecánica, electrónica y programación, la cual
en base a sensores y mecanismos sigue una serie de instrucciones algorítmicas las cuales le
permiten por ejemplo a un brazo robótico montar una rueda, ajustar un tornillo o cortar un
rectángulo de 3 cm cuadrados en una placa de acero. Con el avance de la tecnología los
límites de la programación se vuelven cada vez más distantes.
HISTORIA DE LOS LENGUAJES DE PROGRAMACION
la historia de estos lenguajes, desde 1957 hasta el año 2005. Parece que, entre los
numerosos lenguajes de programación que existen hoy en día, los más populares son Java,
C y C++ (datos del año 2005).
1 – Fortran (1957)
FORmula TRANslation es el lenguaje de programación más antiguo y que continúa en uso.
Creada por John Backus, esta herramienta fue desarrollada para la computación científica de
alto nivel, matemática y estadística.
A día de hoy, este lenguaje se sigue usando en la industria automovilística, aeroespacial,
gubernamental y la investigación. Por ejemplo, es muy útil para el pronóstico de los servicios
meteorológicos.
2 – Cobol (1959)
El Common Business Oriented Language está detrás de la mayoría de los sistemas de
transacciones de negocio de los procesos de las tarjetas de crédito, ATMs (Modo de
Transferencia Asíncrona), telefonía, sistemas hospitalarios, gobierno, sistemas
automatizados y señales de tráfico.
El desarrollo de Cobol, creado por Grace Murray Hopper, muestra un lenguaje familiar y
uniforme para transacciones empresariales. Por ejemplo, lo usan en el servicio postal
estadounidense.
3 – Basic (1964)
Creado por estudiantes de Dartmouth College, el denominado Beginners All Purpose
Symbolic Instruction Code fue diseñado como un lenguaje simplificado para aquellos que no
tenían como base fuertes conocimientos técnicos o matemáticos. Una versión modificada,
escrita por Bill Gates y Paul Allen, llegó a ser el primer producto de Microsoft. Fue vendido
al M.I.T.S. para el Altair.
En 1977, fue integrado en el Apple II para su arranque.
4 – C (1969)
Este lenguaje fue desarrollado entre 1969 y 1973 por Dennis Ritchie para los laboratorios
Bell Telephone para usarlos en el sistema Unix. Se le llamó “C” porque sus características
derivaban de un lenguaje anterior llamado “B”.
C llegó a ser tan poderoso que la mayoría del núcleo de Unix fue reescrito con él. De hecho,
hoy en día, Linux está todavía basado en C.
5 – Pascal (1970)
El lenguaje se llamó así en honor de Blaise Pascal, el inventor de las calculadoras
matemáticas, aunque su creador se llamaba Niklaus Wirth, y lo desarrolló como una
herramienta de enseñanza y formación aunque tiene un uso meramente comercial. Este
lenguaje se usa en Skype.
6 – C++ (1983)
En los laboratorios Bells, Bjarne Stroustrup modificó el lenguaje C al C++, creando lo que
muchos consideran el lenguaje de programación más popular que ha existido nunca. Además,
ha sido listado en lo alto de los top ten de los lenguajes de programación desde 1986 y
archivado en el Hall of Fame en 2003. Hoy en día es usado por Firefox, Office y Adobe PDF
Reader.
7 – Perl (1987)
Larry Wall, un programador Unix, creó Perl después de intentar extraer datos de un informe
y darse cuenta que Unix no podía llevar a cabo las operaciones que él necesitaba. Practical
Extraction Report Language fue descrito por su inventor como un lenguaje que “consigue
que hagas tu trabajo”. Actualmente es usado por Craigslist.
8 – Python (1991)
Monty Python sirvió de inspiración para nombrar este lenguaje. Guido Van Rossum lo creó
para solucionar problemas en el lenguaje ABC y continúa utilizándose para tal fin. Hoy en
día es usado por la NASA, Google y YouTube.
9 – Ruby (1993)
Fue creado por Yukihiro Matsumoto, conocido como Matz, y utilizando partes de sus
lenguajes de programación favoritos: Perl, Smalltalk, Eiffel, Ada y Lisp. Ahora es usado
por Basecamp.
10 – PHP (1995)
Rasmus Lerdoff desarrolló PHP para reemplazar unos scripts de Perl usados para mantener
su web personal. Hoy en día, PHP ha crecido hasta llegar a ser parte de una arquitectura web
integrada en 20 millones de websites. Facebook lo usa actualmente.
11 – Java (1995)
Un grupo de trabajadores de Sun Microsystems, liderado por James Gosling, creó Java para
arrancar los decodificadores de una televisión interactiva. Hoy en día, Java está presente en
más de 1.000 millones de PCs de todo el mundo y muchas websites no pueden funcionar sin
ella. Fue utilizada en 2004 en la misión de la NASA Mars Rovers.
12 – Javascript (1995)
Java y Javascript no están relacionados y tienen muy diferente semántica, aunque no lo
parezca. Javascript fue desarrollada por Brendan Eich, de Netscape, bajo el nombre de
Mocha. Tiene influencia del lenguaje C. Hoy en día es usado en servicios como node.js. De
él depende AJAX.
13 – Ruby On Rails (2005)
Fue extraído por David Heinemeier Hansson de su trabajo en Basecamp, un proyecto dirigido
por 37 señales. Hasson lanzó Ruby On Rails, en principio, como código abierto, en 2004,
pero no compartió los derechos hasta febrero de 2005. Ahora está en su versión 3.0.7 y tiene
más de 1.800
DISEÑO Y CONSTRUCCION DE UN COMPILADOR
HERRAMIENTAS FLEX Y BISON
Flex y Bison es un una herramienta que permite generar analizadores léxicos. A partir de un
conjunto de expresiones regulares, Flex busca concordancias en un fichero de entrada y
ejecuta acciones asociadas a estas expresiones.
Que es Flex y Bison
Flex y Bison, un generador de analizadores léxicos el primero y un generador de analizadores
gramaticales el segundo, son dos herramientas útiles para crear programas que reaccionen a
una entrada de datos con una estructura y un lenguaje predeterminado, como por ejemplo,
podemos crear compiladores, intérpretes y analizadores de línea de comando. Flex es un una
herramienta que permite generar analizadores léxicos. A partir de un conjunto de expresiones
regulares, Flex busca concordancias en un fichero de entrada y ejecuta acciones asociadas a
estas expresiones. Uno de los usos principales de Flex es como acompañante del analizador
de gramáticas Bison (o de Yacc). Los analizadores Bison necesitan una función llamada
‘yylex()’ para devolverles el siguiente token de la entrada. Esa función devuelve el tipo del
próximo token y además puede poner cualquier valor asociado en la variable global yylval.
Para usar Flex con Bison, normalmente se especifica la opción –d de Bison para que genera
el fichero ‘y.tab.h’ que contiene las definiciones de todos los ‘%tokens’ que aparecen el
fuente Bison.
COMO SE COMPILA FLEX Y BISON
Como se compila con Flex y Bison Para compilar en Flex y Bison seguimos los siguientes
pasos. Cuando tengas listo podrás llamar a flex/bison desde el símbolo del sistema sin
necesidad de ubicarte en la carpeta donde ha sido instalado flex/bison. Luego de escribir las
especificaciones de flex y bison realizar lo siguiente. Si se desea invocar a flex:
Instalación y aplicación de Flex y Bison

Más contenido relacionado

La actualidad más candente

Centro de estudios tecnologicos y de servicio no
Centro de estudios tecnologicos y de servicio noCentro de estudios tecnologicos y de servicio no
Centro de estudios tecnologicos y de servicio nowendy_romero06
 
Lenguajes De ProgramacióN
Lenguajes De ProgramacióNLenguajes De ProgramacióN
Lenguajes De ProgramacióNFernanda Garza
 
Clasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónClasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónMike Voodoo
 
Historia de la programacion (linea del tiempo)
Historia de la programacion (linea del tiempo)Historia de la programacion (linea del tiempo)
Historia de la programacion (linea del tiempo)kevin antonio
 
Historia del C++ y JAVA
Historia del C++ y JAVAHistoria del C++ y JAVA
Historia del C++ y JAVANohemi Cuesta
 

La actualidad más candente (11)

Linea
LineaLinea
Linea
 
Centro de estudios tecnologicos y de servicio no
Centro de estudios tecnologicos y de servicio noCentro de estudios tecnologicos y de servicio no
Centro de estudios tecnologicos y de servicio no
 
Taller microsoft
Taller microsoftTaller microsoft
Taller microsoft
 
Lenguajes De ProgramacióN
Lenguajes De ProgramacióNLenguajes De ProgramacióN
Lenguajes De ProgramacióN
 
Taller microsoft
Taller microsoftTaller microsoft
Taller microsoft
 
Clasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónClasificación de los lenguajes de programación
Clasificación de los lenguajes de programación
 
Historia de la programacion (linea del tiempo)
Historia de la programacion (linea del tiempo)Historia de la programacion (linea del tiempo)
Historia de la programacion (linea del tiempo)
 
Lenguaje PHP
Lenguaje PHPLenguaje PHP
Lenguaje PHP
 
Historia del C++ y JAVA
Historia del C++ y JAVAHistoria del C++ y JAVA
Historia del C++ y JAVA
 
Computacion
ComputacionComputacion
Computacion
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje c
 

Similar a Instalación y aplicación de Flex y Bison

EVOLUCIOIN DE LA PROGRAMAMCION.docx
EVOLUCIOIN DE LA PROGRAMAMCION.docxEVOLUCIOIN DE LA PROGRAMAMCION.docx
EVOLUCIOIN DE LA PROGRAMAMCION.docxJuanLuisHuloPoma2
 
Flex y bison héctor espinosa
Flex y bison   héctor espinosaFlex y bison   héctor espinosa
Flex y bison héctor espinosaHector Espinosa
 
historia de la programacion.docx
historia de la programacion.docxhistoria de la programacion.docx
historia de la programacion.docxLeonardoLekat
 
El Lenguaje C y Sistemas Operativos Actuales
El Lenguaje C y Sistemas Operativos ActualesEl Lenguaje C y Sistemas Operativos Actuales
El Lenguaje C y Sistemas Operativos Actualesgabirevillag
 
Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)Hugo Vallejo
 
Lenguajes programacion
Lenguajes programacionLenguajes programacion
Lenguajes programacionXavii Torres
 
Linea del tiempo de los lenguajes de programación
Linea del tiempo de los lenguajes de programaciónLinea del tiempo de los lenguajes de programación
Linea del tiempo de los lenguajes de programaciónEspitiaGiancarlo
 
Historia de los lenguajes de programación power point
Historia de los lenguajes de programación power pointHistoria de los lenguajes de programación power point
Historia de los lenguajes de programación power pointramosmendezshura
 
Lengiajes de programacion valeria loaiza zuleta
Lengiajes de programacion valeria loaiza zuletaLengiajes de programacion valeria loaiza zuleta
Lengiajes de programacion valeria loaiza zuletaOnce Redes
 
Linea del tiempo al
Linea del tiempo alLinea del tiempo al
Linea del tiempo alAelrShaid
 
Presupuestos o costos de
Presupuestos o costos dePresupuestos o costos de
Presupuestos o costos deberniedeguzman
 

Similar a Instalación y aplicación de Flex y Bison (20)

EVOLUCIOIN DE LA PROGRAMAMCION.docx
EVOLUCIOIN DE LA PROGRAMAMCION.docxEVOLUCIOIN DE LA PROGRAMAMCION.docx
EVOLUCIOIN DE LA PROGRAMAMCION.docx
 
Flex y bison héctor espinosa
Flex y bison   héctor espinosaFlex y bison   héctor espinosa
Flex y bison héctor espinosa
 
historia de la programacion.docx
historia de la programacion.docxhistoria de la programacion.docx
historia de la programacion.docx
 
El Lenguaje C y Sistemas Operativos Actuales
El Lenguaje C y Sistemas Operativos ActualesEl Lenguaje C y Sistemas Operativos Actuales
El Lenguaje C y Sistemas Operativos Actuales
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempo
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempo
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempo
 
Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)
 
Lenguajes programacion
Lenguajes programacionLenguajes programacion
Lenguajes programacion
 
Software1
Software1Software1
Software1
 
Linea del tiempo de los lenguajes de programación
Linea del tiempo de los lenguajes de programaciónLinea del tiempo de los lenguajes de programación
Linea del tiempo de los lenguajes de programación
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 
Historia de los lenguajes de programación power point
Historia de los lenguajes de programación power pointHistoria de los lenguajes de programación power point
Historia de los lenguajes de programación power point
 
Paola y lorena
Paola y lorenaPaola y lorena
Paola y lorena
 
Lengiajes de programacion valeria loaiza zuleta
Lengiajes de programacion valeria loaiza zuletaLengiajes de programacion valeria loaiza zuleta
Lengiajes de programacion valeria loaiza zuleta
 
Presentación3
Presentación3Presentación3
Presentación3
 
Bison y flex
Bison y flexBison y flex
Bison y flex
 
Linea del tiempo al
Linea del tiempo alLinea del tiempo al
Linea del tiempo al
 
Presupuestos o costos de
Presupuestos o costos dePresupuestos o costos de
Presupuestos o costos de
 
Software1
Software1Software1
Software1
 

Más de Edwin Valenzuela

Más de Edwin Valenzuela (18)

Sistemas complejos
Sistemas complejosSistemas complejos
Sistemas complejos
 
Codigo huffman
Codigo huffmanCodigo huffman
Codigo huffman
 
Programa entropia
Programa entropiaPrograma entropia
Programa entropia
 
La entropía y los sistemas abiertos
La entropía y los sistemas abiertosLa entropía y los sistemas abiertos
La entropía y los sistemas abiertos
 
Leyes de entropia
Leyes de entropiaLeyes de entropia
Leyes de entropia
 
Entropía y neguentropía
Entropía y neguentropíaEntropía y neguentropía
Entropía y neguentropía
 
La ingeniería en sistemas bajo la visión de la tgs
La ingeniería en sistemas bajo la visión de la tgsLa ingeniería en sistemas bajo la visión de la tgs
La ingeniería en sistemas bajo la visión de la tgs
 
Teoria de la_toma_decisiones
Teoria de la_toma_decisionesTeoria de la_toma_decisiones
Teoria de la_toma_decisiones
 
Teoria de los juegos
Teoria de los juegosTeoria de los juegos
Teoria de los juegos
 
Topologias Matematica
Topologias MatematicaTopologias Matematica
Topologias Matematica
 
La cibernetica
La ciberneticaLa cibernetica
La cibernetica
 
Dos enfoques
Dos enfoquesDos enfoques
Dos enfoques
 
Sistemas abiertos cerrados
Sistemas abiertos cerradosSistemas abiertos cerrados
Sistemas abiertos cerrados
 
Sinergia recursividad
Sinergia recursividadSinergia recursividad
Sinergia recursividad
 
Taller 2
Taller 2Taller 2
Taller 2
 
Ejercicios python
Ejercicios pythonEjercicios python
Ejercicios python
 
Emu 8086
Emu 8086Emu 8086
Emu 8086
 
Integracion por descomposicion_en_fracciones_parciales
Integracion por  descomposicion_en_fracciones_parcialesIntegracion por  descomposicion_en_fracciones_parciales
Integracion por descomposicion_en_fracciones_parciales
 

Último

codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinavergarakarina022
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...JAVIER SOLIS NOYOLA
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.DaluiMonasterio
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxinformacionasapespu
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docxAleParedes11
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPELaura Chacón
 

Último (20)

codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karina
 
Unidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDIUnidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDI
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
 
Unidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDIUnidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDI
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
La Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdfLa Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdf
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
Razonamiento Matemático 1. Deta del año 2020
Razonamiento Matemático 1. Deta del año 2020Razonamiento Matemático 1. Deta del año 2020
Razonamiento Matemático 1. Deta del año 2020
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPE
 

Instalación y aplicación de Flex y Bison

  • 1. PONTIFICIA UIVERSIDAD CATÓLICA DEL ECUADOR SEDE IBARRA ESCUELA DE INGENIERÍA 1. DATOS INFORMATIVOS 1.1 Nombre: Edwin Valenzuela 1.2 Carrera: Ingeniería en Sistemas 1.3 Nivel: 5 Nivel 1.4 Tema: Instalación de Flex y Bison 1.5 Fecha: 2016/06/21 2. DESCRIPCION APLICACIÓN DE LOS LENGUAJES Los lenguajes de programación hoy en día tienen una infinidad de aplicaciones, básicamente cualquier objeto electrónico tiene cierto grado de programación. Algunos de los más comunes son C++ y JAVA, también existe HTML, HTTP, XML, XAML y C#, este último actualmente es el más utilizado en todos los dispositivos y redes basados en MICROSOFT (Xbox 350, Windows Mobile, Windows Phone, Windows Cloud, Zune, etc.). Ya que los lenguajes de programación son informáticamente un puente entre el Hardware y el Software estos permiten que las computadoras puedan establecer conexión con un celular, una cámara o una consola portátil de videojuego. Otra de las aplicaciones de los lenguajes de programación son las matemáticas como las calculadoras, cajas registradoras, cajeros automáticos, por solo mencionar algunos ejemplos sencillos. Existen también niveles de programación mucho más complejos como los videojuegos o los pilotos automáticos de los aviones comerciales o las máquinas de juego de los casinos que siguen un patrón de probabilidad a partir de un arreglo de números al azar establecido por una programación numérica. La robótica es la combinación de mecánica, electrónica y programación, la cual en base a sensores y mecanismos sigue una serie de instrucciones algorítmicas las cuales le permiten por ejemplo a un brazo robótico montar una rueda, ajustar un tornillo o cortar un rectángulo de 3 cm cuadrados en una placa de acero. Con el avance de la tecnología los límites de la programación se vuelven cada vez más distantes.
  • 2. HISTORIA DE LOS LENGUAJES DE PROGRAMACION la historia de estos lenguajes, desde 1957 hasta el año 2005. Parece que, entre los numerosos lenguajes de programación que existen hoy en día, los más populares son Java, C y C++ (datos del año 2005). 1 – Fortran (1957) FORmula TRANslation es el lenguaje de programación más antiguo y que continúa en uso. Creada por John Backus, esta herramienta fue desarrollada para la computación científica de alto nivel, matemática y estadística. A día de hoy, este lenguaje se sigue usando en la industria automovilística, aeroespacial, gubernamental y la investigación. Por ejemplo, es muy útil para el pronóstico de los servicios meteorológicos. 2 – Cobol (1959) El Common Business Oriented Language está detrás de la mayoría de los sistemas de transacciones de negocio de los procesos de las tarjetas de crédito, ATMs (Modo de Transferencia Asíncrona), telefonía, sistemas hospitalarios, gobierno, sistemas automatizados y señales de tráfico. El desarrollo de Cobol, creado por Grace Murray Hopper, muestra un lenguaje familiar y uniforme para transacciones empresariales. Por ejemplo, lo usan en el servicio postal estadounidense.
  • 3. 3 – Basic (1964) Creado por estudiantes de Dartmouth College, el denominado Beginners All Purpose Symbolic Instruction Code fue diseñado como un lenguaje simplificado para aquellos que no tenían como base fuertes conocimientos técnicos o matemáticos. Una versión modificada, escrita por Bill Gates y Paul Allen, llegó a ser el primer producto de Microsoft. Fue vendido al M.I.T.S. para el Altair. En 1977, fue integrado en el Apple II para su arranque. 4 – C (1969) Este lenguaje fue desarrollado entre 1969 y 1973 por Dennis Ritchie para los laboratorios Bell Telephone para usarlos en el sistema Unix. Se le llamó “C” porque sus características derivaban de un lenguaje anterior llamado “B”. C llegó a ser tan poderoso que la mayoría del núcleo de Unix fue reescrito con él. De hecho, hoy en día, Linux está todavía basado en C. 5 – Pascal (1970) El lenguaje se llamó así en honor de Blaise Pascal, el inventor de las calculadoras matemáticas, aunque su creador se llamaba Niklaus Wirth, y lo desarrolló como una herramienta de enseñanza y formación aunque tiene un uso meramente comercial. Este lenguaje se usa en Skype. 6 – C++ (1983)
  • 4. En los laboratorios Bells, Bjarne Stroustrup modificó el lenguaje C al C++, creando lo que muchos consideran el lenguaje de programación más popular que ha existido nunca. Además, ha sido listado en lo alto de los top ten de los lenguajes de programación desde 1986 y archivado en el Hall of Fame en 2003. Hoy en día es usado por Firefox, Office y Adobe PDF Reader. 7 – Perl (1987) Larry Wall, un programador Unix, creó Perl después de intentar extraer datos de un informe y darse cuenta que Unix no podía llevar a cabo las operaciones que él necesitaba. Practical Extraction Report Language fue descrito por su inventor como un lenguaje que “consigue que hagas tu trabajo”. Actualmente es usado por Craigslist. 8 – Python (1991) Monty Python sirvió de inspiración para nombrar este lenguaje. Guido Van Rossum lo creó para solucionar problemas en el lenguaje ABC y continúa utilizándose para tal fin. Hoy en día es usado por la NASA, Google y YouTube. 9 – Ruby (1993) Fue creado por Yukihiro Matsumoto, conocido como Matz, y utilizando partes de sus lenguajes de programación favoritos: Perl, Smalltalk, Eiffel, Ada y Lisp. Ahora es usado por Basecamp. 10 – PHP (1995)
  • 5. Rasmus Lerdoff desarrolló PHP para reemplazar unos scripts de Perl usados para mantener su web personal. Hoy en día, PHP ha crecido hasta llegar a ser parte de una arquitectura web integrada en 20 millones de websites. Facebook lo usa actualmente. 11 – Java (1995) Un grupo de trabajadores de Sun Microsystems, liderado por James Gosling, creó Java para arrancar los decodificadores de una televisión interactiva. Hoy en día, Java está presente en más de 1.000 millones de PCs de todo el mundo y muchas websites no pueden funcionar sin ella. Fue utilizada en 2004 en la misión de la NASA Mars Rovers. 12 – Javascript (1995) Java y Javascript no están relacionados y tienen muy diferente semántica, aunque no lo parezca. Javascript fue desarrollada por Brendan Eich, de Netscape, bajo el nombre de Mocha. Tiene influencia del lenguaje C. Hoy en día es usado en servicios como node.js. De él depende AJAX. 13 – Ruby On Rails (2005) Fue extraído por David Heinemeier Hansson de su trabajo en Basecamp, un proyecto dirigido por 37 señales. Hasson lanzó Ruby On Rails, en principio, como código abierto, en 2004, pero no compartió los derechos hasta febrero de 2005. Ahora está en su versión 3.0.7 y tiene más de 1.800 DISEÑO Y CONSTRUCCION DE UN COMPILADOR
  • 7. Flex y Bison es un una herramienta que permite generar analizadores léxicos. A partir de un conjunto de expresiones regulares, Flex busca concordancias en un fichero de entrada y ejecuta acciones asociadas a estas expresiones. Que es Flex y Bison Flex y Bison, un generador de analizadores léxicos el primero y un generador de analizadores gramaticales el segundo, son dos herramientas útiles para crear programas que reaccionen a una entrada de datos con una estructura y un lenguaje predeterminado, como por ejemplo, podemos crear compiladores, intérpretes y analizadores de línea de comando. Flex es un una herramienta que permite generar analizadores léxicos. A partir de un conjunto de expresiones regulares, Flex busca concordancias en un fichero de entrada y ejecuta acciones asociadas a estas expresiones. Uno de los usos principales de Flex es como acompañante del analizador de gramáticas Bison (o de Yacc). Los analizadores Bison necesitan una función llamada ‘yylex()’ para devolverles el siguiente token de la entrada. Esa función devuelve el tipo del próximo token y además puede poner cualquier valor asociado en la variable global yylval. Para usar Flex con Bison, normalmente se especifica la opción –d de Bison para que genera el fichero ‘y.tab.h’ que contiene las definiciones de todos los ‘%tokens’ que aparecen el fuente Bison.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12. COMO SE COMPILA FLEX Y BISON Como se compila con Flex y Bison Para compilar en Flex y Bison seguimos los siguientes pasos. Cuando tengas listo podrás llamar a flex/bison desde el símbolo del sistema sin necesidad de ubicarte en la carpeta donde ha sido instalado flex/bison. Luego de escribir las especificaciones de flex y bison realizar lo siguiente. Si se desea invocar a flex: