SlideShare una empresa de Scribd logo
1 de 45
Descargar para leer sin conexión
Analizador léxico




Departamento de Ciencias de la Computación




                                    Analizador léxico




Departamento de Ciencias de la Computación
Analizador léxico




            Departamento de Ciencias de la Computación




                                    Expresiones regulares




Φ       Φ
λ       λ   λ
    ∈

            Departamento de Ciencias de la Computación
Expresiones regulares complejas




      ∪




 Departamento de Ciencias de la Computación




                                     Analizador léxico




 Departamento de Ciencias de la Computación
Reconocedor




            Departamento de Ciencias de la Computación




Autómata Finito No Determinista (AFND)

                 δ



    δ
        δ            ∈             ∈ ∪             λ     ⊂
        ∈
        ⊆


            Departamento de Ciencias de la Computación
Diagrama de transiciones




    δ




           Departamento de Ciencias de la Computación




        Diagrama de transiciones: ejemplo




                                                        *




δ            δ                          δ
δ            δ                          δ
δ            δ                          δ

           Departamento de Ciencias de la Computación
Diagrama de transiciones: ejemplo




δ           δ                   δ
δ           δ                   δ
δ           δ                   δ


                 Departamento de Ciencias de la Computación




                Función de transición extendida




    δ   λ
                     δ

                           δ

                 δ

                 Departamento de Ciencias de la Computación
Función de transición extendida: ejemplo



 δ   λ
 δ       δ
 δ           δ           ∪δ                                   ∪
 δ
 δ
 δ

                 Departamento de Ciencias de la Computación




                         Expresión regular – AFND



                   Φ

                                                              λ
                  λ




                 Departamento de Ciencias de la Computación
Expresión regular – AFND




               λ                                 λ

               λ                                 λ


                               λ




Departamento de Ciencias de la Computación




        Expresión regular – AFND




                                λ

               λ                             λ


                                λ




Departamento de Ciencias de la Computación
Expresión regular – AFND: ejemplo




     Departamento de Ciencias de la Computación




Expresión regular – AFND: ejemplo



                                                      λ

                                          λ                   λ


                                                      λ
                                                  λ

                   λ             λ                        λ


                                                  λ
     Departamento de Ciencias de la Computación
Analizador léxico




          Departamento de Ciencias de la Computación




    Autómata Finito Determinista (AFD)

           δ



δ
    δ              ∈             ∈        ∪       λ    ∈
     ∈
    ⊆


          Departamento de Ciencias de la Computación
AFND vs AFD


                                                  δ

    δ                 ∈            ∈ ∪           λ           ⊂
        δ



    δ                       ∈           ∈       ∪       λ        ∈
        δ


                Departamento de Ciencias de la Computación




                Tabla de transiciones: ejemplo




δ
δ
            δ
            δ                 δ
                              δ

                Departamento de Ciencias de la Computación
Tabla de transiciones: ejemplo




    δ
    δ

    δ
    δ


         Departamento de Ciencias de la Computación




        Función de transición extendida




δ   λ
              δ                 δ δ




         Departamento de Ciencias de la Computación
Función de transición extendida: ejemplo

  δ   λ
  δ       δδ      λ             δ
  δ       δδ                        δ
  δ
  δ
  δ
  δ




           Departamento de Ciencias de la Computación




                                               Analizador léxico




           Departamento de Ciencias de la Computación
Analizador léxico




                      λ



δ

                                                 δ


    Departamento de Ciencias de la Computación




                                        Analizador léxico




                      λ



δ

                                                 δ


    Departamento de Ciencias de la Computación
AFND- λ a AFD




 Departamento de Ciencias de la Computación




AFND- λ a AFD: procedimiento



                                                      λ



                                              λ
               λ               λ                  λ

                           λ


 Departamento de Ciencias de la Computación
AFND- λ a AFD: procedimiento



λ

         λ




                                                 λ
                  λ               λ                  λ

                              λ

    Departamento de Ciencias de la Computación




AFND- λ a AFD: procedimiento



                   λ
    λ,                λ




                                                 λ
                  λ               λ                  λ

                              λ


    Departamento de Ciencias de la Computación
AFND- λ a AFD: procedimiento



λ


          λ




                                                     λ
                  λ               λ                      λ

                              λ

    Departamento de Ciencias de la Computación




AFND- λ a AFD: procedimiento




    ∈                                            ∈
              λ

                                                     λ
                  λ               λ                      λ

                              λ

    Departamento de Ciencias de la Computación
AFND- λ a AFD: procedimiento



    δ               ∈



        δ                          λ

                                                              λ
                           λ               λ                      λ

                                       λ

             Departamento de Ciencias de la Computación




            AFND- λ a AFD: procedimiento



δ                      δ                                  δ
δ       λ              δ       λ                          δ   λ
δ                      δ                                  δ
δ       λ              δ       λ                          δ   λ

                                                              λ
                           λ               λ                      λ

                                       λ

             Departamento de Ciencias de la Computación
AFND- λ a AFD: procedimiento



δ                                      δ
δ                                      δ

δ    δ                                 δ              δ

                                                  λ
                   λ               λ                  λ

                               λ

     Departamento de Ciencias de la Computación




    AFND- λ a AFD: procedimiento




                                                  λ
                   λ               λ                  λ

                               λ

     Departamento de Ciencias de la Computación
Analizador léxico




δ

                                                 δ


    Departamento de Ciencias de la Computación




                        AFND a AFD: ejemplo




    Departamento de Ciencias de la Computación
AFND a AFD: ejemplo




Departamento de Ciencias de la Computación




                    AFND a AFD: ejemplo




Departamento de Ciencias de la Computación
Ejercicios




        Departamento de Ciencias de la Computación




                   AFND- λ a AFD: ejercicio




λ,+,−                                                λ




        Departamento de Ciencias de la Computación
AFND- λ a AFD: ejercicio




             λ               λ




Departamento de Ciencias de la Computación




                 AFND a AFD: ejercicio




Departamento de Ciencias de la Computación
Analizador léxico




Departamento de Ciencias de la Computación




              Autómata Finito Mínimo




   δ                                         δ




Departamento de Ciencias de la Computación
Autómata Finito Mínimo




    δ                             δ




        Departamento de Ciencias de la Computación




                      Autómata Finito Mínimo




δ
δ


        Departamento de Ciencias de la Computación
Autómata Finito Mínimo




γ

                          γ
                                  δ
    Departamento de Ciencias de la Computación




                  Autómata Finito Mínimo




    Departamento de Ciencias de la Computación
Autómata Finito Mínimo: Ejercicio




  +,−




        Departamento de Ciencias de la Computación




Autómata Finito Mínimo: Ejercicio




        Departamento de Ciencias de la Computación
Analizador léxico




Departamento de Ciencias de la Computación




              Diagrama de transiciones



                                             λ




Departamento de Ciencias de la Computación
Diagrama de transiciones




Departamento de Ciencias de la Computación




              Diagrama de transiciones




Departamento de Ciencias de la Computación
Diagrama de transiciones




Departamento de Ciencias de la Computación




                                    Analizador léxico




Departamento de Ciencias de la Computación
Analizador léxico




Departamento de Ciencias de la Computación




                                                 Ejemplo




                                             .




Departamento de Ciencias de la Computación
Analizador léxico: Operaciones




Departamento de Ciencias de la Computación




                                             Errores léxicos




Departamento de Ciencias de la Computación
Detección de errores y recuperación




     Departamento de Ciencias de la Computación




                Ejemplo de análisis léxico




                                                  ?




     Departamento de Ciencias de la Computación
Ejemplo de análisis léxico




        Departamento de Ciencias de la Computación




Especificación de un analizador léxico




        Departamento de Ciencias de la Computación
Ejemplo




      Departamento de Ciencias de la Computación




Identificador de palabras reservadas




      Departamento de Ciencias de la Computación
Resolución implícita




Departamento de Ciencias de la Computación




                           Resolución implícita




Departamento de Ciencias de la Computación
Resolución explícita




    Departamento de Ciencias de la Computación




Ejemplo: Diagrama de transiciones




    Departamento de Ciencias de la Computación
Ejemplo: Diagrama de transiciones



                             *


                            *                    *




                                     *



    Departamento de Ciencias de la Computación




Ejemplo: Diagrama de transiciones




    Departamento de Ciencias de la Computación
Ejercicio: Diagrama de transiciones



                    λ




                        Departamento de Ciencias de la Computación




            Ejercicio: Diagrama de transiciones



                8
    -               d           d
            d                       otro          * ENTERO
0                           6                 7
        +
                                     +                   +
                            1                   3                    5 2INCR
                                otro                 otro
                                       *                     **
                                    2 SUMA             4 SUMA


                        Departamento de Ciencias de la Computación
Ejercicio: Diagrama de transiciones




        Departamento de Ciencias de la Computación




Implementación de analizadores léxicos




        Departamento de Ciencias de la Computación
Implementación a mano de un analizador
                                                               léxico




            Departamento de Ciencias de la Computación




                                                             Ejemplo




 Estado 0-9        otro token Retroceso
    0   1             Error   -                          -
    1   1               2     -                          -
    2   -               - Num_entero                     1

            Departamento de Ciencias de la Computación
Ejemplo



Estado     + - d                  Token               Retroceso
  0        1     8 6                 -                    -
  1        3     2 2                 -                    -
  2        -     - -              SUMA                    1
  3        5     4 4                 -                    -
  4        -     - -              SUMA                    2
  5        -     - -              2INCR                   0
  6        7     7 6                 -                    -
  7        -     - -             ENTERO                   1
  8      Error   Error 6             -                    -
         Departamento de Ciencias de la Computación




                            Prioridad de los tokens




         Departamento de Ciencias de la Computación
Ejemplo de prioridad de tokens




Departamento de Ciencias de la Computación




                                             Ejercicio




Departamento de Ciencias de la Computación
Ejercicio




Departamento de Ciencias de la Computación




                                             Ejercicio




Departamento de Ciencias de la Computación
Tema3

Más contenido relacionado

Destacado

Introducción a la pedagogía
Introducción a la pedagogíaIntroducción a la pedagogía
Introducción a la pedagogíaari0107
 
Seguridad industrial (1)
Seguridad industrial (1)Seguridad industrial (1)
Seguridad industrial (1)David solis
 
Cómo crear un grupo de correo de google. tutorial anexo m
Cómo crear un grupo de correo de google. tutorial   anexo mCómo crear un grupo de correo de google. tutorial   anexo m
Cómo crear un grupo de correo de google. tutorial anexo mluriarte42
 
Plan verde junio2011
Plan verde junio2011Plan verde junio2011
Plan verde junio2011luismamelodi
 
Redes sociales
Redes socialesRedes sociales
Redes socialesVaRoToRo
 
Aplicaciones de la web 2.0 como estrategia didáctica
Aplicaciones de la web 2.0 como estrategia didáctica Aplicaciones de la web 2.0 como estrategia didáctica
Aplicaciones de la web 2.0 como estrategia didáctica blanca carmona
 
Teoria de la division
Teoria de la divisionTeoria de la division
Teoria de la divisionRosaline Pink
 
Capitulo ix y x
Capitulo ix y xCapitulo ix y x
Capitulo ix y xamroserob
 
Mitología griega
Mitología griegaMitología griega
Mitología griegaalaejos20
 
el volcan tungurahua
el volcan tungurahuael volcan tungurahua
el volcan tungurahuaforever78
 
Adm 401 administración del stress
Adm 401   administración del stressAdm 401   administración del stress
Adm 401 administración del stressProcasecapacita
 
El medio ambiente
El medio ambienteEl medio ambiente
El medio ambienteJezyka
 
Salvador melguizo quesada trabajo 2 tic
Salvador melguizo quesada trabajo 2 ticSalvador melguizo quesada trabajo 2 tic
Salvador melguizo quesada trabajo 2 ticsalva7
 

Destacado (20)

Introducción a la pedagogía
Introducción a la pedagogíaIntroducción a la pedagogía
Introducción a la pedagogía
 
Eutanàsia
EutanàsiaEutanàsia
Eutanàsia
 
Seguridad industrial (1)
Seguridad industrial (1)Seguridad industrial (1)
Seguridad industrial (1)
 
Cómo crear un grupo de correo de google. tutorial anexo m
Cómo crear un grupo de correo de google. tutorial   anexo mCómo crear un grupo de correo de google. tutorial   anexo m
Cómo crear un grupo de correo de google. tutorial anexo m
 
Plan verde junio2011
Plan verde junio2011Plan verde junio2011
Plan verde junio2011
 
Tema victoria
Tema victoriaTema victoria
Tema victoria
 
Presentación de tecnologia
Presentación de tecnologiaPresentación de tecnologia
Presentación de tecnologia
 
Redes sociales
Redes socialesRedes sociales
Redes sociales
 
Aplicaciones de la web 2.0 como estrategia didáctica
Aplicaciones de la web 2.0 como estrategia didáctica Aplicaciones de la web 2.0 como estrategia didáctica
Aplicaciones de la web 2.0 como estrategia didáctica
 
van gaal - Filosofia
van gaal - Filosofiavan gaal - Filosofia
van gaal - Filosofia
 
Teoria de la division
Teoria de la divisionTeoria de la division
Teoria de la division
 
Capitulo ix y x
Capitulo ix y xCapitulo ix y x
Capitulo ix y x
 
Síntesis curricular
Síntesis curricularSíntesis curricular
Síntesis curricular
 
Mitología griega
Mitología griegaMitología griega
Mitología griega
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
el volcan tungurahua
el volcan tungurahuael volcan tungurahua
el volcan tungurahua
 
Animacion
AnimacionAnimacion
Animacion
 
Adm 401 administración del stress
Adm 401   administración del stressAdm 401   administración del stress
Adm 401 administración del stress
 
El medio ambiente
El medio ambienteEl medio ambiente
El medio ambiente
 
Salvador melguizo quesada trabajo 2 tic
Salvador melguizo quesada trabajo 2 ticSalvador melguizo quesada trabajo 2 tic
Salvador melguizo quesada trabajo 2 tic
 

Más de JackieHee27

Unidad temática iv
Unidad temática ivUnidad temática iv
Unidad temática ivJackieHee27
 
Ha2 cm40 eq3-saca
Ha2 cm40 eq3-sacaHa2 cm40 eq3-saca
Ha2 cm40 eq3-sacaJackieHee27
 
Ha2 cm40 eq3-powerdesigner
Ha2 cm40 eq3-powerdesignerHa2 cm40 eq3-powerdesigner
Ha2 cm40 eq3-powerdesignerJackieHee27
 
Ha2 cm40 eq3-cisa
Ha2 cm40 eq3-cisaHa2 cm40 eq3-cisa
Ha2 cm40 eq3-cisaJackieHee27
 
Ha2 cm40 eq3-intelisis
Ha2 cm40 eq3-intelisisHa2 cm40 eq3-intelisis
Ha2 cm40 eq3-intelisisJackieHee27
 
Ha2 cm40 morales m jacquelinne-proteccion datos11
Ha2 cm40 morales m jacquelinne-proteccion datos11Ha2 cm40 morales m jacquelinne-proteccion datos11
Ha2 cm40 morales m jacquelinne-proteccion datos11JackieHee27
 
Ha2 cm40 morales m jacquelinne-normalizacion
Ha2 cm40 morales m jacquelinne-normalizacionHa2 cm40 morales m jacquelinne-normalizacion
Ha2 cm40 morales m jacquelinne-normalizacionJackieHee27
 
Ha4 cm40 morales m jacquelinne-esr
Ha4 cm40 morales m jacquelinne-esrHa4 cm40 morales m jacquelinne-esr
Ha4 cm40 morales m jacquelinne-esrJackieHee27
 
Ha4 cm40 morales m jacquelinne-case
Ha4 cm40 morales m jacquelinne-caseHa4 cm40 morales m jacquelinne-case
Ha4 cm40 morales m jacquelinne-caseJackieHee27
 
Ha2 cm40 morales m jacquelinne-tecnologias-emergentes
Ha2 cm40 morales m jacquelinne-tecnologias-emergentesHa2 cm40 morales m jacquelinne-tecnologias-emergentes
Ha2 cm40 morales m jacquelinne-tecnologias-emergentesJackieHee27
 
Ha2 cm40 morales m jacquelinne-soa
Ha2 cm40 morales m jacquelinne-soaHa2 cm40 morales m jacquelinne-soa
Ha2 cm40 morales m jacquelinne-soaJackieHee27
 
Ha2 cm40 morales m jacquelinne-saas
Ha2 cm40 morales m jacquelinne-saasHa2 cm40 morales m jacquelinne-saas
Ha2 cm40 morales m jacquelinne-saasJackieHee27
 
Ha2 cm40 morales m jacquelinne-rfid
Ha2 cm40 morales m jacquelinne-rfidHa2 cm40 morales m jacquelinne-rfid
Ha2 cm40 morales m jacquelinne-rfidJackieHee27
 
Ha2 cm40 morales m jacquelinne-nfc
Ha2 cm40 morales m jacquelinne-nfcHa2 cm40 morales m jacquelinne-nfc
Ha2 cm40 morales m jacquelinne-nfcJackieHee27
 
Ha2 cm40 morales m jacquelinne-mercadotecnia
Ha2 cm40 morales m jacquelinne-mercadotecniaHa2 cm40 morales m jacquelinne-mercadotecnia
Ha2 cm40 morales m jacquelinne-mercadotecniaJackieHee27
 
Ha2 cm40 morales m jacquelinne-itil
Ha2 cm40 morales m jacquelinne-itilHa2 cm40 morales m jacquelinne-itil
Ha2 cm40 morales m jacquelinne-itilJackieHee27
 
Ha2 cm40 morales m jacquelinne-iso
Ha2 cm40 morales m jacquelinne-isoHa2 cm40 morales m jacquelinne-iso
Ha2 cm40 morales m jacquelinne-isoJackieHee27
 
Ha2 cm40 morales m jacquelinne-computo en la nube
Ha2 cm40 morales m jacquelinne-computo en la nubeHa2 cm40 morales m jacquelinne-computo en la nube
Ha2 cm40 morales m jacquelinne-computo en la nubeJackieHee27
 
Ha2 cm40 morales m jacquelinne-cobit
Ha2 cm40 morales m jacquelinne-cobitHa2 cm40 morales m jacquelinne-cobit
Ha2 cm40 morales m jacquelinne-cobitJackieHee27
 

Más de JackieHee27 (20)

Unidad temática iv
Unidad temática ivUnidad temática iv
Unidad temática iv
 
Fnch
FnchFnch
Fnch
 
Ha2 cm40 eq3-saca
Ha2 cm40 eq3-sacaHa2 cm40 eq3-saca
Ha2 cm40 eq3-saca
 
Ha2 cm40 eq3-powerdesigner
Ha2 cm40 eq3-powerdesignerHa2 cm40 eq3-powerdesigner
Ha2 cm40 eq3-powerdesigner
 
Ha2 cm40 eq3-cisa
Ha2 cm40 eq3-cisaHa2 cm40 eq3-cisa
Ha2 cm40 eq3-cisa
 
Ha2 cm40 eq3-intelisis
Ha2 cm40 eq3-intelisisHa2 cm40 eq3-intelisis
Ha2 cm40 eq3-intelisis
 
Ha2 cm40 morales m jacquelinne-proteccion datos11
Ha2 cm40 morales m jacquelinne-proteccion datos11Ha2 cm40 morales m jacquelinne-proteccion datos11
Ha2 cm40 morales m jacquelinne-proteccion datos11
 
Ha2 cm40 morales m jacquelinne-normalizacion
Ha2 cm40 morales m jacquelinne-normalizacionHa2 cm40 morales m jacquelinne-normalizacion
Ha2 cm40 morales m jacquelinne-normalizacion
 
Ha4 cm40 morales m jacquelinne-esr
Ha4 cm40 morales m jacquelinne-esrHa4 cm40 morales m jacquelinne-esr
Ha4 cm40 morales m jacquelinne-esr
 
Ha4 cm40 morales m jacquelinne-case
Ha4 cm40 morales m jacquelinne-caseHa4 cm40 morales m jacquelinne-case
Ha4 cm40 morales m jacquelinne-case
 
Ha2 cm40 morales m jacquelinne-tecnologias-emergentes
Ha2 cm40 morales m jacquelinne-tecnologias-emergentesHa2 cm40 morales m jacquelinne-tecnologias-emergentes
Ha2 cm40 morales m jacquelinne-tecnologias-emergentes
 
Ha2 cm40 morales m jacquelinne-soa
Ha2 cm40 morales m jacquelinne-soaHa2 cm40 morales m jacquelinne-soa
Ha2 cm40 morales m jacquelinne-soa
 
Ha2 cm40 morales m jacquelinne-saas
Ha2 cm40 morales m jacquelinne-saasHa2 cm40 morales m jacquelinne-saas
Ha2 cm40 morales m jacquelinne-saas
 
Ha2 cm40 morales m jacquelinne-rfid
Ha2 cm40 morales m jacquelinne-rfidHa2 cm40 morales m jacquelinne-rfid
Ha2 cm40 morales m jacquelinne-rfid
 
Ha2 cm40 morales m jacquelinne-nfc
Ha2 cm40 morales m jacquelinne-nfcHa2 cm40 morales m jacquelinne-nfc
Ha2 cm40 morales m jacquelinne-nfc
 
Ha2 cm40 morales m jacquelinne-mercadotecnia
Ha2 cm40 morales m jacquelinne-mercadotecniaHa2 cm40 morales m jacquelinne-mercadotecnia
Ha2 cm40 morales m jacquelinne-mercadotecnia
 
Ha2 cm40 morales m jacquelinne-itil
Ha2 cm40 morales m jacquelinne-itilHa2 cm40 morales m jacquelinne-itil
Ha2 cm40 morales m jacquelinne-itil
 
Ha2 cm40 morales m jacquelinne-iso
Ha2 cm40 morales m jacquelinne-isoHa2 cm40 morales m jacquelinne-iso
Ha2 cm40 morales m jacquelinne-iso
 
Ha2 cm40 morales m jacquelinne-computo en la nube
Ha2 cm40 morales m jacquelinne-computo en la nubeHa2 cm40 morales m jacquelinne-computo en la nube
Ha2 cm40 morales m jacquelinne-computo en la nube
 
Ha2 cm40 morales m jacquelinne-cobit
Ha2 cm40 morales m jacquelinne-cobitHa2 cm40 morales m jacquelinne-cobit
Ha2 cm40 morales m jacquelinne-cobit
 

Tema3

  • 1. Analizador léxico Departamento de Ciencias de la Computación Analizador léxico Departamento de Ciencias de la Computación
  • 2. Analizador léxico Departamento de Ciencias de la Computación Expresiones regulares Φ Φ λ λ λ ∈ Departamento de Ciencias de la Computación
  • 3. Expresiones regulares complejas ∪ Departamento de Ciencias de la Computación Analizador léxico Departamento de Ciencias de la Computación
  • 4. Reconocedor Departamento de Ciencias de la Computación Autómata Finito No Determinista (AFND) δ δ δ ∈ ∈ ∪ λ ⊂ ∈ ⊆ Departamento de Ciencias de la Computación
  • 5. Diagrama de transiciones δ Departamento de Ciencias de la Computación Diagrama de transiciones: ejemplo * δ δ δ δ δ δ δ δ δ Departamento de Ciencias de la Computación
  • 6. Diagrama de transiciones: ejemplo δ δ δ δ δ δ δ δ δ Departamento de Ciencias de la Computación Función de transición extendida δ λ δ δ δ Departamento de Ciencias de la Computación
  • 7. Función de transición extendida: ejemplo δ λ δ δ δ δ ∪δ ∪ δ δ δ Departamento de Ciencias de la Computación Expresión regular – AFND Φ λ λ Departamento de Ciencias de la Computación
  • 8. Expresión regular – AFND λ λ λ λ λ Departamento de Ciencias de la Computación Expresión regular – AFND λ λ λ λ Departamento de Ciencias de la Computación
  • 9. Expresión regular – AFND: ejemplo Departamento de Ciencias de la Computación Expresión regular – AFND: ejemplo λ λ λ λ λ λ λ λ λ Departamento de Ciencias de la Computación
  • 10. Analizador léxico Departamento de Ciencias de la Computación Autómata Finito Determinista (AFD) δ δ δ ∈ ∈ ∪ λ ∈ ∈ ⊆ Departamento de Ciencias de la Computación
  • 11. AFND vs AFD δ δ ∈ ∈ ∪ λ ⊂ δ δ ∈ ∈ ∪ λ ∈ δ Departamento de Ciencias de la Computación Tabla de transiciones: ejemplo δ δ δ δ δ δ Departamento de Ciencias de la Computación
  • 12. Tabla de transiciones: ejemplo δ δ δ δ Departamento de Ciencias de la Computación Función de transición extendida δ λ δ δ δ Departamento de Ciencias de la Computación
  • 13. Función de transición extendida: ejemplo δ λ δ δδ λ δ δ δδ δ δ δ δ δ Departamento de Ciencias de la Computación Analizador léxico Departamento de Ciencias de la Computación
  • 14. Analizador léxico λ δ δ Departamento de Ciencias de la Computación Analizador léxico λ δ δ Departamento de Ciencias de la Computación
  • 15. AFND- λ a AFD Departamento de Ciencias de la Computación AFND- λ a AFD: procedimiento λ λ λ λ λ λ Departamento de Ciencias de la Computación
  • 16. AFND- λ a AFD: procedimiento λ λ λ λ λ λ λ Departamento de Ciencias de la Computación AFND- λ a AFD: procedimiento λ λ, λ λ λ λ λ λ Departamento de Ciencias de la Computación
  • 17. AFND- λ a AFD: procedimiento λ λ λ λ λ λ λ Departamento de Ciencias de la Computación AFND- λ a AFD: procedimiento ∈ ∈ λ λ λ λ λ λ Departamento de Ciencias de la Computación
  • 18. AFND- λ a AFD: procedimiento δ ∈ δ λ λ λ λ λ λ Departamento de Ciencias de la Computación AFND- λ a AFD: procedimiento δ δ δ δ λ δ λ δ λ δ δ δ δ λ δ λ δ λ λ λ λ λ λ Departamento de Ciencias de la Computación
  • 19. AFND- λ a AFD: procedimiento δ δ δ δ δ δ δ δ λ λ λ λ λ Departamento de Ciencias de la Computación AFND- λ a AFD: procedimiento λ λ λ λ λ Departamento de Ciencias de la Computación
  • 20. Analizador léxico δ δ Departamento de Ciencias de la Computación AFND a AFD: ejemplo Departamento de Ciencias de la Computación
  • 21. AFND a AFD: ejemplo Departamento de Ciencias de la Computación AFND a AFD: ejemplo Departamento de Ciencias de la Computación
  • 22. Ejercicios Departamento de Ciencias de la Computación AFND- λ a AFD: ejercicio λ,+,− λ Departamento de Ciencias de la Computación
  • 23. AFND- λ a AFD: ejercicio λ λ Departamento de Ciencias de la Computación AFND a AFD: ejercicio Departamento de Ciencias de la Computación
  • 24. Analizador léxico Departamento de Ciencias de la Computación Autómata Finito Mínimo δ δ Departamento de Ciencias de la Computación
  • 25. Autómata Finito Mínimo δ δ Departamento de Ciencias de la Computación Autómata Finito Mínimo δ δ Departamento de Ciencias de la Computación
  • 26. Autómata Finito Mínimo γ γ δ Departamento de Ciencias de la Computación Autómata Finito Mínimo Departamento de Ciencias de la Computación
  • 27. Autómata Finito Mínimo: Ejercicio +,− Departamento de Ciencias de la Computación Autómata Finito Mínimo: Ejercicio Departamento de Ciencias de la Computación
  • 28. Analizador léxico Departamento de Ciencias de la Computación Diagrama de transiciones λ Departamento de Ciencias de la Computación
  • 29. Diagrama de transiciones Departamento de Ciencias de la Computación Diagrama de transiciones Departamento de Ciencias de la Computación
  • 30. Diagrama de transiciones Departamento de Ciencias de la Computación Analizador léxico Departamento de Ciencias de la Computación
  • 31. Analizador léxico Departamento de Ciencias de la Computación Ejemplo . Departamento de Ciencias de la Computación
  • 32. Analizador léxico: Operaciones Departamento de Ciencias de la Computación Errores léxicos Departamento de Ciencias de la Computación
  • 33. Detección de errores y recuperación Departamento de Ciencias de la Computación Ejemplo de análisis léxico ? Departamento de Ciencias de la Computación
  • 34. Ejemplo de análisis léxico Departamento de Ciencias de la Computación Especificación de un analizador léxico Departamento de Ciencias de la Computación
  • 35. Ejemplo Departamento de Ciencias de la Computación Identificador de palabras reservadas Departamento de Ciencias de la Computación
  • 36. Resolución implícita Departamento de Ciencias de la Computación Resolución implícita Departamento de Ciencias de la Computación
  • 37. Resolución explícita Departamento de Ciencias de la Computación Ejemplo: Diagrama de transiciones Departamento de Ciencias de la Computación
  • 38. Ejemplo: Diagrama de transiciones * * * * Departamento de Ciencias de la Computación Ejemplo: Diagrama de transiciones Departamento de Ciencias de la Computación
  • 39. Ejercicio: Diagrama de transiciones λ Departamento de Ciencias de la Computación Ejercicio: Diagrama de transiciones 8 - d d d otro * ENTERO 0 6 7 + + + 1 3 5 2INCR otro otro * ** 2 SUMA 4 SUMA Departamento de Ciencias de la Computación
  • 40. Ejercicio: Diagrama de transiciones Departamento de Ciencias de la Computación Implementación de analizadores léxicos Departamento de Ciencias de la Computación
  • 41. Implementación a mano de un analizador léxico Departamento de Ciencias de la Computación Ejemplo Estado 0-9 otro token Retroceso 0 1 Error - - 1 1 2 - - 2 - - Num_entero 1 Departamento de Ciencias de la Computación
  • 42. Ejemplo Estado + - d Token Retroceso 0 1 8 6 - - 1 3 2 2 - - 2 - - - SUMA 1 3 5 4 4 - - 4 - - - SUMA 2 5 - - - 2INCR 0 6 7 7 6 - - 7 - - - ENTERO 1 8 Error Error 6 - - Departamento de Ciencias de la Computación Prioridad de los tokens Departamento de Ciencias de la Computación
  • 43. Ejemplo de prioridad de tokens Departamento de Ciencias de la Computación Ejercicio Departamento de Ciencias de la Computación
  • 44. Ejercicio Departamento de Ciencias de la Computación Ejercicio Departamento de Ciencias de la Computación