SlideShare una empresa de Scribd logo
1 de 20
JFLEX Nombres: ,[object Object]
John ortiz,[object Object]
Especificación léxica
Código de usuario
 Opciones y declaraciones
Reglas léxicas
Funciones en JFlex,[object Object]
Como trabaja JFlex Definición del AL JFlex Analizador Lexico
INTRODUCCION ,[object Object]
Expresiones regulares  	         Autómata Finito Determinista.
yylex ≡ implementación del A.F.D.
A cada reglase asocian un conjunto de acciones.
Cuando yylex encuentra una cadena que cumple una regla, ejecuta las acciones asociadas a esa regla.,[object Object]
INTRODUCCION Hay diferentes usos: Transformaciones simples Análisis Estudios estadísticos La velocidad suele ser proporcional a la cantidad de caracteres en la entrada. El número o la complejidad de la reglas sólo influyen sobre el tamaño del autómata.
Especificación léxica Formato general: {Código de usuario} %% {Opciones y declaraciones} %% {Reglas léxicas}
CODIGO DE USUARIO ,[object Object]
El contenido se copia tal y como aparece en la especificación, al principio del código fuente generado por JFlex.
Ej.  Package ,  import , etc.,[object Object]
Opciones y declaraciones Opciones del código generado: • %class nombre Especifica el nombre de la clase generadacomo salida de Jflex • %line y  %columnactivan cuenta de líneas ( yyline ) y columnas ( yycolumn) respectivamente. • %standalone Genera programa que acepta un fichero de entrada en línea de comando. • %debugDurante la ejecución muestra: nº línea de la especificación, lexema reconocido y acción ejecutada.
Opciones y declaraciones Código fuente específico: 	• %{ … %} Código copiado tal cual en la clase. 	• %init{ … %init} Código copiado tal cual en el constructor de la clase. 	• %eofval{ … %eofval} 	Código que se ejecutará cada vez que alcanzamos un final de fichero.

Más contenido relacionado

La actualidad más candente

automatas finitos
 automatas finitos automatas finitos
automatas finitosAnel Sosa
 
Regular expression (compiler)
Regular expression (compiler)Regular expression (compiler)
Regular expression (compiler)Jagjit Wilku
 
Steps for Developing a 'C' program
 Steps for Developing a 'C' program Steps for Developing a 'C' program
Steps for Developing a 'C' programSahithi Naraparaju
 
Análisis léxico y análisis sintáctico
Análisis léxico y análisis sintácticoAnálisis léxico y análisis sintáctico
Análisis léxico y análisis sintácticoangiepao1717
 
Analisis Lexico
Analisis LexicoAnalisis Lexico
Analisis LexicoFARIDROJAS
 
Intermediate code- generation
Intermediate code- generationIntermediate code- generation
Intermediate code- generationrawan_z
 
Tutorial Teorico-Practico Sql server 2000 (233 paginas)
Tutorial Teorico-Practico Sql server 2000 (233 paginas)Tutorial Teorico-Practico Sql server 2000 (233 paginas)
Tutorial Teorico-Practico Sql server 2000 (233 paginas)Martin Murciego
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Osiris Mirerus
 
Tópicos Avanzados de Programación - Unidad 3 programacion concurrente
Tópicos Avanzados de Programación - Unidad 3 programacion concurrenteTópicos Avanzados de Programación - Unidad 3 programacion concurrente
Tópicos Avanzados de Programación - Unidad 3 programacion concurrenteJosé Antonio Sandoval Acosta
 
2...2 expresiones regulares, cerradura, fractales, automata
2...2 expresiones regulares, cerradura, fractales, automata2...2 expresiones regulares, cerradura, fractales, automata
2...2 expresiones regulares, cerradura, fractales, automataJacqui Venegas
 
Clase4: Transformación desde Expresión regular a Autómata finito determinista
Clase4: Transformación desde Expresión regular a Autómata finito deterministaClase4: Transformación desde Expresión regular a Autómata finito determinista
Clase4: Transformación desde Expresión regular a Autómata finito deterministamvagila
 
Autómata de pila (AP)
Autómata de pila (AP)Autómata de pila (AP)
Autómata de pila (AP)Rodrigo GC
 

La actualidad más candente (20)

Csv y xml
Csv y xmlCsv y xml
Csv y xml
 
automatas finitos
 automatas finitos automatas finitos
automatas finitos
 
Regular expression (compiler)
Regular expression (compiler)Regular expression (compiler)
Regular expression (compiler)
 
Lesson 03
Lesson 03Lesson 03
Lesson 03
 
Syntax analysis
Syntax analysisSyntax analysis
Syntax analysis
 
Steps for Developing a 'C' program
 Steps for Developing a 'C' program Steps for Developing a 'C' program
Steps for Developing a 'C' program
 
Strings in c++
Strings in c++Strings in c++
Strings in c++
 
Java inheritance
Java inheritanceJava inheritance
Java inheritance
 
Análisis léxico y análisis sintáctico
Análisis léxico y análisis sintácticoAnálisis léxico y análisis sintáctico
Análisis léxico y análisis sintáctico
 
Analisis Lexico
Analisis LexicoAnalisis Lexico
Analisis Lexico
 
Analizador lexico
Analizador lexicoAnalizador lexico
Analizador lexico
 
Intermediate code- generation
Intermediate code- generationIntermediate code- generation
Intermediate code- generation
 
Tutorial Teorico-Practico Sql server 2000 (233 paginas)
Tutorial Teorico-Practico Sql server 2000 (233 paginas)Tutorial Teorico-Practico Sql server 2000 (233 paginas)
Tutorial Teorico-Practico Sql server 2000 (233 paginas)
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
 
Clase2
Clase2Clase2
Clase2
 
Tópicos Avanzados de Programación - Unidad 3 programacion concurrente
Tópicos Avanzados de Programación - Unidad 3 programacion concurrenteTópicos Avanzados de Programación - Unidad 3 programacion concurrente
Tópicos Avanzados de Programación - Unidad 3 programacion concurrente
 
2...2 expresiones regulares, cerradura, fractales, automata
2...2 expresiones regulares, cerradura, fractales, automata2...2 expresiones regulares, cerradura, fractales, automata
2...2 expresiones regulares, cerradura, fractales, automata
 
FInite Automata
FInite AutomataFInite Automata
FInite Automata
 
Clase4: Transformación desde Expresión regular a Autómata finito determinista
Clase4: Transformación desde Expresión regular a Autómata finito deterministaClase4: Transformación desde Expresión regular a Autómata finito determinista
Clase4: Transformación desde Expresión regular a Autómata finito determinista
 
Autómata de pila (AP)
Autómata de pila (AP)Autómata de pila (AP)
Autómata de pila (AP)
 

Similar a Presentacion JFlex USC (Compiladores) 2011B

Funcion del lex
Funcion del lexFuncion del lex
Funcion del lexPaul MG
 
Analizador lexico.pdf
Analizador lexico.pdfAnalizador lexico.pdf
Analizador lexico.pdfShadowArt2
 
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
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacionsullonkey
 
Trabajo de computacion
Trabajo de computacionTrabajo de computacion
Trabajo de computacionRUBI DEFAZ
 
Trabajo de computacion
Trabajo de computacionTrabajo de computacion
Trabajo de computacionRUBI DEFAZ
 
Elementos de una variable trabajo grupal computacion
Elementos de una variable trabajo grupal computacionElementos de una variable trabajo grupal computacion
Elementos de una variable trabajo grupal computacionjime97
 
Elementos de una variable trabajo grupal computacion
Elementos de una variable trabajo grupal computacionElementos de una variable trabajo grupal computacion
Elementos de una variable trabajo grupal computacionjime97
 

Similar a Presentacion JFlex USC (Compiladores) 2011B (20)

Articulo
ArticuloArticulo
Articulo
 
Bt haskell-1
Bt haskell-1Bt haskell-1
Bt haskell-1
 
Funcion del lex
Funcion del lexFuncion del lex
Funcion del lex
 
Analizador lexico.pdf
Analizador lexico.pdfAnalizador lexico.pdf
Analizador lexico.pdf
 
java y xml
java y xmljava y xml
java y xml
 
Yacc
YaccYacc
Yacc
 
Clase15
Clase15Clase15
Clase15
 
Bison
BisonBison
Bison
 
J Flex Cup
J Flex CupJ Flex Cup
J Flex Cup
 
Introducción A C# (VersióN Charla)
Introducción A C# (VersióN Charla)Introducción A C# (VersióN Charla)
Introducción A C# (VersióN Charla)
 
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++
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
Trabajo de computacion
Trabajo de computacionTrabajo de computacion
Trabajo de computacion
 
Trabajo de computacion
Trabajo de computacionTrabajo de computacion
Trabajo de computacion
 
Lex
LexLex
Lex
 
Lex
LexLex
Lex
 
Elementos de una variable trabajo grupal computacion
Elementos de una variable trabajo grupal computacionElementos de una variable trabajo grupal computacion
Elementos de una variable trabajo grupal computacion
 
Elementos de una variable trabajo grupal computacion
Elementos de una variable trabajo grupal computacionElementos de una variable trabajo grupal computacion
Elementos de una variable trabajo grupal computacion
 
Java y xml
Java y xmlJava y xml
Java y xml
 
generalidades java
generalidades javageneralidades java
generalidades java
 

Último

TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
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
 
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
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptELENA GALLARDO PAÚLS
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
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
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Movimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en VenezuelaMovimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en Venezuelacocuyelquemao
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
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
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxdanalikcruz2000
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 

Último (20)

Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
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
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
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
 
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
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
Movimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en VenezuelaMovimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en Venezuela
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
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
 
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
 
Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 

Presentacion JFlex USC (Compiladores) 2011B

  • 1.
  • 2.
  • 5. Opciones y declaraciones
  • 7.
  • 8. Como trabaja JFlex Definición del AL JFlex Analizador Lexico
  • 9.
  • 10. Expresiones regulares Autómata Finito Determinista.
  • 12. A cada reglase asocian un conjunto de acciones.
  • 13.
  • 14. INTRODUCCION Hay diferentes usos: Transformaciones simples Análisis Estudios estadísticos La velocidad suele ser proporcional a la cantidad de caracteres en la entrada. El número o la complejidad de la reglas sólo influyen sobre el tamaño del autómata.
  • 15. Especificación léxica Formato general: {Código de usuario} %% {Opciones y declaraciones} %% {Reglas léxicas}
  • 16.
  • 17. El contenido se copia tal y como aparece en la especificación, al principio del código fuente generado por JFlex.
  • 18.
  • 19. Opciones y declaraciones Opciones del código generado: • %class nombre Especifica el nombre de la clase generadacomo salida de Jflex • %line y %columnactivan cuenta de líneas ( yyline ) y columnas ( yycolumn) respectivamente. • %standalone Genera programa que acepta un fichero de entrada en línea de comando. • %debugDurante la ejecución muestra: nº línea de la especificación, lexema reconocido y acción ejecutada.
  • 20. Opciones y declaraciones Código fuente específico: • %{ … %} Código copiado tal cual en la clase. • %init{ … %init} Código copiado tal cual en el constructor de la clase. • %eofval{ … %eofval} Código que se ejecutará cada vez que alcanzamos un final de fichero.
  • 21. Opciones y declaraciones Macros y estados: • Macros ≈ definiciones regulares. DigitoHex= [0-9a-fA-F] NumeroBinario = “b” [01]+ • Los estados condicionan las reglas léxicas que se comprueban. %state nombre1, nombre2, … %xstate nombre3, nombre4, …
  • 22. Reglas léxicas Formato: expresión { … acciones …} Funcionamiento: Cuando se detecta un lexema que cumple el patrón definido en la expresión se ejecutan las acciones asociadas (código java)
  • 23. Reglas léxicas Especificación de las expresiones: • ≈ expresiones regulares: sean a y b expresiones válidas a |b Unión a b Concatenación a* Repetición 0 o N veces a+ Repetición 1 o N veces (= a a* ) a? Opcionalidad !a Negación ~a Cualquier cosa que termine en a .
  • 24. Reglas léxicas Especificación de las expresiones: • ≈ expresiones regulares: { nombre } Utilización de una macro “…” Cadena de caracteres […] Clases de caracteres Algunas predefinidas: . Cualquier carácter excepto [:letter:] Letras [^…] Complementario de clases de caracteres
  • 25. Reglas léxicas Especificación de las expresiones: • Caracteres especiales: | ( ) { } [ ] < > . * + ? ^ $ / . " ~ ! • Utilización de estados: <estado1,estado2,…> expresión {…acciones…} Activaciónde un estado: yybegin(estado) Desactivación: activación de otro distinto a él. Estado activo por defecto<YYINITIAL> Las expresiones sin estado asociado corresponden al estado <YYINITIAL>
  • 26. Reglas léxicas Funcionamiento, comprobación de expresiones: Las acciones asociadas a una expresión se ejecutarán si: El lexema concuerda con la expresión y: Ola expresión está asociada a un estado activo, ya sea inclusivo ( %state ) o exclusivo ( %xstate ). b) Ola expresión no está asociada a ningún estado pero el estado activo es inclusivo. <YYINITIAL> es un estado inclusivo
  • 27.
  • 29.