SlideShare ist ein Scribd-Unternehmen logo
1 von 34
¦¦¨¦£¤¢ 
                                                                           ¡ © § ¥ ¡


D£FE¤DCBA@48¡6
G 7 ©¡ £ 6 ¡  97
 43 ) # 1(( 5
' 2 0)'                                                    %$#! 
1   Presentación del curso


2   Conceptos generales y modelo funcional de un          Tareas de la primera sesión presencial
    traductor                                             (consultar la pagina web)

3   Características de un (IDE) Ambiente Integrado
    de Desarrollo

4   Análisis léxico, conceptos e ideas. Aplicar y         Tareas de la segunda sesión presencial
    conocer en desarrollo de analisador para un           (consultar la pagina web)
    traductor.
5   Diagramas de transición. Codificación Lex/Flex


6   Definición de    los   tokens   del   lenguaje    a   Tareas de la tercera sesión presencial
    desarrollar                                           (consultar la pagina web)

7   Examen parcial


8   Revisión de la 1era. etapa parcial del proyecto       Tareas de la cuarta sesión presencial
                                                          (consultar la pagina web)
¨7E¦ ©
    © £ ¨      ¡
                ¦¤6
Traductores
¤¦¥¥¥£¤¢  
§¤¦¥¦¥££¥¤¡¢
 § ¦ £ ¡
cX Ytf
 gGx wvY`bXusgd`csf
 c X a fd X
  sf rigq7QpchigecGbaY`GW
                                       UUV SGER@ FFG9 B¤ 8967
                                               SE E B 86
                                       V TS TS GR@QQPIPI88 HH GE9DCDC¤A@A@9755344 3
                            ##((2¤1$!%$)0( '%#$!  ©©¨§¦§¥£¤¡¢
                            ((¤$$0#($ §§¡¥¤¢  
                               21!%) # '%#!   ¨¦¡ £¡
                                                                                 ¨ 7 © £ ¨
                                                                                  E¦ ©    ¡
                                                                                               ¦¤6
Traductores
¤¦¥¥¥£¤¢  
§¤¦¥¦¥££¥¤¡¢
 § ¦ £ ¡
JGS /883 / Parcial 1 / Clase 1 / Serial 1
                                                       !¡§¨¦¤¢ 
                                                           © ¥ £ ¡
                                                       !¡§¨¦¤¢ 
                                                           © ¥ £ ¡
                                0¨e¨ $ 10'UF¨§dQG`Y0 c
                                  ¡©      © §F©                       F ¡  ( g £ 0
                                                                           ¢¨¨¦Vfe c
                      C¡ ¤$ 50A@8506504¤ 2
                          B  9 7  ( 3                             I©¨¦¤¢ 
                                                                            § ¥ £ ¡
                       $ 1''¡¢¡¨'© %#
                          0  ) (  ¡ $                             ( $ HG¢¡ ED
                                                                               F $



semestre
                     XC¡ ¤$ 50A@8506504¤ 2
                          B  9 7  ( 3                             ¢IW£VU)'UF T
                                                                           F ¡
                       $ 1''¡¢¡¨'© %#
                          0  ) (  ¡ $                             $ 10 $ RS QP
                                                                               § ) $
                                        0VQ $ ¡UF b$ a¢5IU`Y05¨4¦¢ 2
                                          ¡© 7 T     F©   £
                v p q s q r qp i
                 qf¢iut¢'¢Y¢1h
!¨§¥¦¢ Vi ©iuYq §¨¥¦¢q £¤¢ 
              p r  s  v q ¥ r qp i © p ¡                                 v


Que el alumno:

Sea capaz de aplicar los conceptos relacionados con la teoría
formal de lenguajes en el desarrollo de sistemas de
traducción; utilizando las herramientas existentes para el
diseño de lenguajes de programación. Elaborare un lenguaje
para programación de computadores empleando cadenas
del idioma español conjuntamente con el compilador y
máquina virtual que permitan la implementación del lenguaje
definido.

Demostrar su habilidad para la comunicación oral y escrita
con el lenguaje natural y también utilizando lenguaje
matemático y estructuras graficas, en la realización de la
documentación para un sistema computacional.

Planificar y administrar un proyecto de desarrollo de
software, estimando tiempos, organizando actividades y
recursos; ser consiente de la importancia que el trabajo en
equipo tiene para realizar dichas actividades

Actuar de manera responsable y honesta durante la
elaboración de trabajos individuales y en equipo además de
demostrar su habilidad para trabajar con sus compañeros de
clase y aprender por cuenta propia.




                                          JGS /883 / Parcial 1 / Clase 1 / Serial 2
JGS /883 / Parcial 1 / Clase 1 / Serial 3
                                            aD5`TXWV5TSD¢54H
                                              I QY R U I R Q P I
                         5
                                               § E C A £ 6
                                               ¦G !F¦5D¦BA¤¡6 @
                                             '#$¦937 © © ¨§¥¦¤¡¢ 
                                                § ¡ 8 6 § £
   OPR 0, AX                                                                }
   CAL 1, AX                                                                   patito ();
   LOD _E1, AX                                                              principal () {
   OPR 21, AX                                    5¤43§21£¦0¦)(
                                                  ¥ 0  ¥ £
   LIT 5, AX                                 §#£
                                              '¤%#$¡§! © §© ¨§¥¦¤¢ 
                                                                      £¡    }
   STO x, AX                                                                   imprime (5);
   OPR 19, AX                                                                  lee (x);
   @                                                                        patito () {
   |#                                                                       funcion entera
   _E1,I,I,0,7                                  
                                                 §© §© ¨§¥¦¤¢ 
                                                                   £¡
   #                                                                             entero x;
   X,E,G,O,O |
     p q  ¢ i@bgeq
           p hp q v f  d                    c 2b
¤£¤¨¦ ¥¤¢ 
 ¡   © § ¡£ ¡




    JGS /883 / Parcial 1 / Clase 1 / Serial 4
§    ¤¡    
                                                                             ¦     

            Lexico

                                              Interprete              Traductor                                 Compilador



       Token-lexema




                                                  Analisis               Lenguaje                                   Sintesis
Automatas        Expresion
  Finitos         Regular




                                                     Tabla
                              Sintactico
                                                    Simbolos

                                                                                  Semantico                Codigo




                             Gramaticas
                                                                                                        Ecuación
                                                                      Ecuación                          Traduccion
                                                                                        Esquemas
                                                                       Atributo


                     Diagramas             Ebnf




                       Parser LL(1),
                                                                     Estructura               Esquema de
Tabla Tokens            Predictivo,                E. de Datos                                                           M.V.
                                                                     semantica                Traduccion
                       descendente


                                                               ¤©¦¥¦¤¢ 
                                                               £ ¨ § £¡
                                                                                        JGS /883 / Parcial 1 / Clase 1 / Serial 5
     ¤¡    ¤  §  ¥¢§ 
                                   £               ¡


Define tu propio lenguaje de programación en español
          Y construye un compilador para él


         Tlatoni, JavaÑol, Jamaica, IDE2001,
                        Etc.




                   Documentalo

              Tlatoni How To Program
  Aprendiendo a construir un compilador en 24 horas
            Compiladores for dummies..
                        Etc.




                                        JGS /883 / Parcial 1 / Clase 1 / Serial 6
§  ¥ ¢§   ¤ §  ¡ ¥§ 
                                      ¡ £               ©    


   Tecnologias de Compiladores        Avances en Lenguajes de Programación.
   Eduardo Pierdant                   Alberto Borbolla
   Microsoft México                   Air-Go Technologies
   (fragmento)                        (fragmento)




¿por qué nuevos lenguajes?

¿dónde?

¿cómo?

¿para qué?

Comunidad académica



       “sencillo” – alcanzable – ¿mejorable? – proyecto real -
                          multidiciplinario



                                                 JGS /883 / Parcial 1 / Clase 1 / Serial 7
§ ¡¡  ©  ¤¦
                                                                 ¡

                           programador




                                            documentador

           tester  quality




1   2 3 4 5 6 7 8 9 10 11 12 13 14 15                                   16




     Examen Parcial
    Revisión Etapa 1
                                           Examen Parcial
             IDE +                        Revisión Etapa 3
             Lexico
                                            Semantica +
                                          Generar Codigo

                        Examen Parcial
                       Revisión Etapa 2                    Examen Final
                                                           Presentación
                            Sintaxis +
                         Tabla Simbolo                                     MV

                                              JGS /883 / Parcial 1 / Clase 1 / Serial 8
£¢   ¤¡
                                                  © ¡ ¡ 




Desempeño individual    Examenes rapidos y parciales




 Trabajo en Equipo
                                  Rubrica
 (por etapa y final)




   Documentación
                                  Rubrica
  (por etapa y final)




      Producto
                                  Rubrica
  (por etapa y final)




                                            JGS /883 / Parcial 1 / Clase 1 / Serial 9
©£¢   ¤¡
                                                                                        ¡ ¡ 

Calificación por parcial
  © 2)#!©FEC
  % 1 © 0 $   D                                                    ¤£¡`
  ¢£2§¥
 Y 8 © 1 ©                                                          ¤ 
                                                                       
 X£¦0 %AWV1!UT¢EA' QP AI%HG#' 21#££#!6FEC
           ¦ 0 ¦ S R  ©  % % ' $ 8 ¦ % 0 © 8  $  D             ¤ 
                                                                       
  © 20)©B© )B ¦ A2@©9£
  % 1 © © 0 ¨      '  ¦11 8                2!7¨ %453
                                                 ©1 ¦ 6              ¤ 
                                                                       
 2!7¨ !453© 20)¨(© )'(! ©#!£
 ©1 ¦ 6 %      % 1 © © 0 ©    $ %  ¨ $    ¦                 ¤ 
                                                                       
  £§¥
  ©¨ ¦                                                               £¡£¢ 
                                                                     ¤ ¡


*Las tareas se evalúan de 0 a 5 pts., se considera parte de la evaluación la presentación
 del trabajo, inclusión de referencias bibliográficas, así como la redacción y contenido.

Calificación final

 ”      u di AHVAyAdvV!u
       – p € …ƒ i — – u w u t • s                                     cdb “

     pV€7v’f !9dvVAV‰‡9AHƒV‚
       i w x w € … i h w u t ‘ … f ˆ † f h … u „ f                    cdb q

      Vw7yduvtV!r
     p i € x w   i s                                                  cdb q

 pVi9Age
     h f                                                              c dbVba



Proyectos parciales y final

Desarrollo de un compilador para un lenguaje estructurado y una maquina virtual capaz
de ejecutar el código intermedio del lenguaje anterior.

Parcial 1.              Ambiente integrado de desarrollo (IDE), analizador léxico.
Parcial 2.              Analizador Sintáctico, administrador de errores, tabla de símbolos.
Parcial 3.              Análisis semántico, generación de código.
Proyecto final.         Máquina virtual y unión de piezas.




                                                                    JGS /883 / Parcial 1 / Clase 1 / Serial 10
! ¥¢¨§¥¢¢ 
                                                    ¡ © ¤  ¦  ¡ © £ ¦ ¤ £ ¡


1.       Introducción: proceso y etapas de compilación, teoría formal de lenguajes.
2.       Análisis léxico: autómatas de estados finitos, expresiones regulares
3.       Análisis sintáctico: gramáticas y metodologías de reconocimiento
4.       Definición de la tabla de símbolos
5.       Análisis semántico: verificar tipos, flujo y unicidad.
6.       Generación de código intermedio.
7.       Diseño de maquinas virtuales e interpretación de código intermedio




                                                                           5420(¨¡ $¨$© 
                                                                           )3 1 ) '  ©% #

     •   Compiler Design. Reinhard Wilhelm, Addisson Wesley 1995.

     •   Compiladores, principios, tecnicas y herramientas. Aho, Sethi,
         Ullman. Addisson Wesley 1990.

     •   Compiler construction. Kenneth Louden PWS 1997

     •   Advanced Programming Languaje design. Raphael Finkel. Addison Wesley
         1996




                                                                  JGS /883 / Parcial 1 / Clase 1 / Serial 11
! ¤ ¢ ¢ ¦ ¨¨(¨¡ 
                                                          ) !© © ¤
                                                            )          ¦  ¡ ¡ (© ¨ ¡   
                                                                               ©  


PUNTUALIDAD Y ASISTENCIA.
•      Lista de asistencia al inicio de la clase. La salida de clase es 15 minutos antes
       de la siguiente hora.


CRITERIOS PARA EXÁMENES.
•      Basamos este curso en la honestidad, por ello, si la confianza en tí depositada
       es defraudada por copiar en un examen o entregar como tuyo un proyecto que
       no realizaste, existe una sanción.

REVISIÓN DE EXÁMENES Y PROYECTOS.
•      Sólo puedes efectuar la revisión en el salón a la hora y fecha acordada, después
       no hay correcciones.
•      En la revisión de los proyectos por equipo deberán estar presentes todos los
       integrantes del equipo. El profesor preguntará sobre el proyecto a cualquier
       integrante del equipo para evaluar el trabajo realizado.

TAREAS.
TAREAS.
•      NO se reciben tareas despues de la fecha de entrega.
•      Todas las tareas y/o proyectos deberán incluir portada o encabezado con los
       datos del alumno y bibliografía.



ORDEN Y LIMPIEZA EN EL SALÓN DE CLASE.
•   Por políticas del ITESM, no está permitida la entrada de alimentos y bebidas al
    aula ni fumar.

HORAS DE ESTUDIO.
•   Al tratarse de una materia de 8 unidades, significa que son 3 horas clase a la
    semana con 5 horas de trabajo fuera de ella. Haciendo así un total de 8 horas de
    estudio para esta materia a la semana.



                                                           JGS /883 / Parcial 1 / Clase 1 / Serial 12
! © ' $  !     ©
  )(!%#© ¨
Traductores
¤¦¥¥¥£¤¢  
§¤¦¥¦¥££¥¤¡¢
 § ¦ £ ¡
JGS /883 / Parcial 1 / Clase 2 / Serial 13
                                                                 ) C 4T
                                                                  ( 2m E GE xU4
                                                               ) 2 S 2 2 c
                                                                (m GE ¨w —˜–B6 ('
                      @ 45 '5
                       H8(7D5A4                         ' I dB5A86 ) n'AR H'FE
                                                           2 4 – 4 2 2I                               @(' Q(' —˜–2F@
                                                                                                                 ‡
                          4AI                                                                                 4 AI
                5 S56 2 –
                 ('AI 7B@ 2A) —YI S                   FE B6 )Ad(¨¢@ F 2@ QAS AS
                                                       ' 2 S – 4@ 2 )                                      S AA86
                                                                                                             Q‡S
                                                          FE BFE 86 ) $¢@ F 2@ QAS AS
                                                          ' 26 S 2@ 2 )
                                                              FE 3a14 Qd@ F 2@ QAS )AS
                                                              ' 2 2
                                             @ $@H86 ) Fv‘@ F 2@ QAS )AW4A•' QA4AH'dq$YgxuYwv! nqtYdYGY s
                                               2 4 2@ u 2              S I I – # !  f e h p  i  j ij
                                                             !  e      j i‚   p i  j i p f   i p
                                                           yYwhvr 9iYqƒ3qi €wYdYg!Aqqi p
                                                                                         X ' S 22) 2o d p 
                                                                                          YAI FE D† AR (q‰ gfFqnhi i
                                                                        X( 2m FE DBH(FEWAPHS R Al
                                                                          ) E C56@ ) ' 4 I @ Q 4                    f 
                                                                                                              #(kjftgupf i
   X ' 2† ' S S C I S
    Y86 2A) D•86 4 ‡A7† QAW)A94AP@A75A‡AS QAS 9)AdB(7† (FW4 P(' Q(' ‡—˜–2F•A•86 AC”U((%
                                              c S –5 ' ) 'E C h @          @ 4I ' ) T)'                          ‰! gtgi €
                                                                                                                 # f f
                              XY86 4 (7† QAW)A94AP@HD6 )A4 ()A1e7Acd@A' ' —˜–F•APHS AAI (%
                                ' ‡ S S C I 4 2 4 0 '5 Q ‡ 2 @ 4 I @ ) 4 S                                     vqqgxq™
                                                                                                               #  “ 
      X S
       G@H75A‡AS QAS 94AW(' GFE DB¨H(FWS 9)AP@A'AI ˜2QA1‘@A' (' —g–F•A•'86 A) 2D•86 AC”U((%
                     c I ) 2 E C56@ ) 'E Q 4           S0 Q ‡ 2@ 4I 2 † ' ) T)'                              # ! i “  x
                                                                                                              ‰qB’g‘
                                                                 'AI FE B† 2AR $v$AS R 8‰86 4 A7† t…vƒ3qi €
                                                                     S 2 ) 2 @ ˆ @ Q 45 ˆ ' ‡ S Q „ # i‚   p
                                                                            y !  f e h
                                                                            ¨YguxYwv! 
                   rsY¨qupftspq9hgYeYP F(d A' c BPA47B6WA48@ 3b`
                     i i e i r i i f ! e  !    @ 26 @ 5 ) 6 2 a
                                    X '5 ' S 4T C Q C I ) 2 C56 @ 2 5 2 0 ) ' #  !    
                                     Y7B6HWWVUS R )A4 9)A94AP@H4H(' GEFE DBA) 94867(4 31((%$ ©
                                                                                                        PGPYvd¢y
                                                                                                        € z ~ } | { z
 ¨' )¦¤© ¢  
   §   ¥ £ ¡
¨' )¦¤© ¢  
                                                               §   ¥ £ ¡ 


•       Compilador vs Interprete
•       Modelo analisis – sintesis de la compilación
•       Analisis lineal, jerarquico y semantico.
•       Tabla de simbolos

•       Manejador de errores

•       UNIENDO LAS PARTES: el proceso completo de compilación

•       Compiladores de 1, 2 o N pasos

•       Herramientas
        Preprocesadores, ensambladores, cargadores, editores de enlace


                                                                             ¡ ¢     ¡   £ ¡

    •    Realiza las actividades marcadas como Tarea 1. Introducción
         descritas en la seccion Parcial 1 de la pagina web del curso

         http://dcc.gda.itesm.mx/~jagonzal/CB00883/




                                                       JGS /883 / Parcial 1 / Clase 2 / Serial 14
9    6 ¢ %3 3  ¡   $ % $
                                                                          
                                @7801'54%21©0)('©©#!©©¦§¥£
                                                                   ¨ ¤ %£  ' ¤§ ¨
                                                                               ©   £                               (¤
                                                                                                                   '    ¡

• Ventana 1. Editor de Texto

• Ventana 2. Notificación de Errores
                      RQH
                     B T                      B 2D                  T0S RRQI1F2ECA
                                                                        H F PH G D B

                 X          W          W CU
                                         V




                      CecCU
                     f d b a       g
 • Menú:      `@Y                      Guardar,Abrir, Nuevo
                 h   tsrECif
                     g f q U p
               `                       Lexico, Compilar, Ejecutar



 • IDE tradicional vs Visual

                                                                                                                         X
                                                      e‚ Ieywu
                                                     ƒ  € xv               yˆ5e5y5„
                                                                            ƒ‡ x † … ƒv
                                                           ‰                                 h gf Q™
                                                                                               e ed

                                                               ‰j                                      k

                                                       “y
                                                       ’ ‘                           k            el       k
                                                         ˜– y”
                                                        — •                                    m eh l          k
                                                      h gf Q™
                                                        e ed
                                                                                               ˆo yl
                                                                                               p n
                                                        d ˆi
                                                          e                                    d ˆi
                                                                                                 e




 •Actividad Recomendada :

 Desarrollar un IDE visual. (10 puntos sobre calificación final)

 Nota :

 Los programas visuales tambien deben guardarse/abrirse




                                                                            JGS /883 / Parcial 1 / Clase 2 / Serial 15
) '     ©
   ($%#!¨
Traductores
¤¦¥¥¥£¤¢  
§¤¦¥¦¥££¥¤¡¢
 § ¦ £ ¡
(%#!¡¨
                                                               ) ' $      ©



          Código                                                  Lexema                 Token
                   caracteres              Tokens   Conjunto
          Fuente                Analisis               de
           *.txt                Léxico              Patrones




                                                                  Linea     Clase      Descripcion
                                admon                Lista
                                                      de
           IDE                    de                Errores
                                Errores



CONCEPTOS

•          Alfabeto, palabra o cadena, lenguaje


NOTACION

    |s|                  longitud de la cadena s
    ∈                    cadena vacía (| £ | = 0)
    xy                   concatenación de las cadenas x,y (x £ = £x = x)
    sn                   s0=∈, s1=s, s2=ss, etc.
    prefijo              eliminar cero o más caracteres al final de una palabra.
    sufijo               eliminar cero o más caracteres al inicio de la palabra.
    subcadena            eliminar cero o más caracteres al inicio y al final
                         subcadena propia de s ≠ s
    subsecuencia         subcadena generada al eliminar cero o más
                         caracteres no consecutivos de una palabra



                                                                 JGS /883 / Parcial 1 / Clase 2 / Serial 7
(%#!¡¨
                                                      ) ' $      ©


OPERACIONES SOBRE LENGUAJES

unión                L1 U L2 = L1 | L2 = s/s está en L1 o L2
concatenación        L1L2 = st/ s esta en L1 y t esta en L2
cerradura            L* = conjunto de palabras de cero o N letras.
de Klen              L* = {L+, £}
cerradura            L+ = conjunto de palabras de una o N letras.
positiva



CASOS DE USO

a) si D+ = {conjunto de cadenas formadas por números} entonces,
   el conjunto de los enteros positivos Z se define como {-D+, D+}

b) L* | D* = letras, números y cadena vacía
c) L(L | D)* = identificadores con carácter inicial

El uso de las operaciones anteriores define las asi llamadas
expresiones regulares

d) Ln|Dn para n  1 es posible ?

EXPRESIONES REGULARES

a)    (a | b)(a | b) = {aa, bb, ba, ab}
b)    a* = { ∈, a, aa, aaa, aaaa, ... }
c)    (a | b)* = {∈ ,a, b, aa, bb, ... }


                                                        JGS /883 / Parcial 1 / Clase 2 / Serial 8
JGS /883 / Parcial 1 / Clase 2 / Serial 9
           u                                                  #                      6
             4F    2  G WF  Q  F    I34$ ˆ 5  C6   2 G ‡ `2† 64…Q     7 29 F    I3ƒ £
                          f                     ƒ #
CACA3”¦“‘‰
—– •– • ’ 
                                                                         ƒ 0£ ¡    ' 6
                                                     0G£¤¡  67  Q I34 '1GveQ     € 3   7  g 2    
                                                                           ¤©6 ¤ f CG£V„VWX'  g  7  Q I34
                                                                           B   #0 ¡ ¡ B              6  ƒ
                                                                                           B u g               
                                                                                           ¤©6 Qyf ‚#¦ 5    €
                                                                                            B # g F 6
                                                                                            ¤©6 Qyf xA   7 
                                                                          w ¡ uuu ¡ t ¡ s ¡ p ¡ h F 
                                                                           3PTTvbQdQrqbigA©6 ¤ f #
                                                                                                         CASO DE USO
                                                      ¨  ¥ £
                                                      ©§¦¤¡¢                         #            
                                                                                    $     ©  ! ¦  
                                                                                                            
                                                % 0 £ ¡  ' %
                                                 1¤¢)(¥¦                                £            6
                                                                                            9@A% 89 )7   5 4  23  
                                                                                                               
                                                        %   ¥ B
                                                        ©§EC 
                                                   £ ¡ B  %
                                                    ¤DC§¥¦                       F ¤# ©  $ )7   5 4  23  
                                                                                              6                       
                                                     %  ¥ % % 
                                                     §¦)0G)'                                                  6  I$3 #
                                                                                                                              H
                                                    ¥ £ 
                                                   §¦©§¥P 3£               5  G  7  Q   9 9# 3 # 7  #
                                                                                        6  2 #  6
                                            6F   ¥ 6 F ¡  
                                            XQ¡WV6EUR03¢)'                                      5 9 2 ©6 G I F   
                                                                                                       
                                            6  F  ¥ 06 ¡ F
                                            T¤¡9ES©9©'R                                                 # 6  6
                                                                       5 4 G  67  Q   2¦ ! a 7 `Y )X F #
                                                                                                                                 
                                                                                                                             5 
                                             ¡ F ¥ F
                                            ¤¦bA3¡¢                                                     # 6 6 
                                                                                                       $ a 4©7 H Q 
                                     6 F   ¥ 0 6 F'
                                      b0e)'(¢PE©d                                                               @ 
                                                                                          5 4 G  67  Q  A 5 
                                 6G!0cFQ¢)§S0PG¡¦©Q¡¢ 
                                   ¡ ¡  ' ¥ 6 F'                                                           ! a 7 4 cF 
                                                                                                                # 6  
       PROPIEDADES ALGEBRAICAS DE LAS EXPRESIONES REGULARES
 (%#!¨
 ) ' $     ©
©
  — Ce! – – ¨
    •–
Traductores
¤¦¥¥¥£¤¢  
§¤¦¥¦¥££¥¤¡¢
 § ¦ £ ¡
— Ce – – ¡¨
                                                                          •– !       ©

Token: conjunto de palabras regidas por una regla ajustadas a un patrón.
Lexema: palabra asociada a un patrón
Patrón: regla de ajuste para construir palabras. Expresión regular.

   AD2¦
     r                                      qp! 
                                            $ 7i                            AD%h#Bd
                                                                                  $
             ©(   T¤S $¦g $ ¥ B$ ©( c¤2  D¥ !R $
                           (  f S                      #3¦ © ©1 (De$C#! #¤%$#! 
                                                         4 2    
  %¤D2
         d                    B¦! ¥bab¥ X W ¥ X
                              Gc                               `G`GG¨YX W Y W
                                                                             X
       7¤9¤A                                  VUG ¤S!R
                                                  T         I3¦ © P1)DIHF0¦ © 1 )D(
                                                            Q3 2 ( G E 2
 ¤C$¦ ©
                                        ¤B¤@8
                                         52(A9 7            6#3¤¦ © 1 0('%$#! 
                                                           5 4 2 )   
           £¤¢                    ¨¥ ¥ ¨¦¤¢
                                  £§ © ¢ © § ¥£                                      £ ¤¢
Para definir la gramática del lenguaje los tokens serán los elementos
fundamentales.

IMPLEMENTACIÓN DE ANALISIS LÉXICO : DTE
IMPLEMENTACIÓ              LÉ

Representación gráfica de un patrón:

a)            Estado Inicial, Estado, Estado de aceptación
b)            Transiciones

CODIFICACIÓN DE UN DIAGRAMA DE TRANSICIÓN DE ESTADOS
CODIFICACIÓ                    TRANSICIÓ

Programación estructurada VS Programación Orientada a Objetos


CODIFICACIÓN EN LEX/FLEX
CODIFICACIÓ




                                                                       JGS /883 / Parcial 1 / Clase 2 / Serial 10
JGS /883 / Parcial 1 / Clase 2 / Serial 11
                                                                            V wwwaEo ˆ
                                                                               bRS‰c
                                                                             V UPR ˜˜I”TkŽ ˆ
                                                                               ey
                                                                       E“ ƒaUSƒwy — ˆ
                                                                       V bIY Ic
                                                                     8f wwUˆy–8vq ˆ
                                                                     Y bRY ‡Y V
                                                                    Y b bcV‰ T
                                                                     8f PR aUw`GxU‹ ˆ
                            ‘ Œi ’ Y cS S b T I c T eS Š b TG“d
                             Eo•”`o“%`G w`dwE…Y€QX`QG—wxSU`S `E‹˜V UQ`EwHŽ ˆ
                             ‘8˜‚s„`osk‘Y`G wS`wE…Y€QX`twxSU`S `w˜‹ŠwQ`G ‰ ˆ
                                   h h Ž c dS b TGŒ c T eS V T
                                                                      c T R TS
                                                                       ExG`QGI’wxSUvq ˆ
                                                                      vv2’`58xk8#kE6
                                                                      A{ |x2 @‡ †@
     { 2 x 7 } { y @6 0 ‚ y }  z 7 € y 4 |6 } |{ 2 y 7w 2
      v’|8H…2Hƒ9‚7U{H9@xkE2q„z8}ƒ8x592x52HE96k89~zH}Pw8¨4Pav©9z2vrx¨vBv
 `u(ts
   ¥ ¥  ¡
                               d                b I e R IY I V T IYG TG Xj
                           cwS`weSeUSWxRT`GIa…YcwgS˜TPG %Y8VW€QGPUSwV ef¤%xV`QGa`%Vx`UUY D r
                                                                           T TGR b c b XV D
                                                                            UgSQT`W¤Y…Pc weSe…e…€8vq 8p
                                                                                            c T T
                                                                                             ExG8xVQT`o D n
                  e bR G V‰m d
                   `S PwY`wY8w`PGHEQGIaYUSIwV ˜ef8d `S…XPEGUwSEPw5UVx`QGa`G UVx`Ujki `h
                                                          e bR d mGl d T IY c TG X                          D
                                                                                   c TVd b eG D
                                                                                    ExG8UwSI %X……b`HF ¦g
                         bR cS d c S bR e T c I™ T c T d TG‰
                     Y8f PwSEY8eubaw€G`¦d’EG eUEY8V wwS `xG5d’UVWR bƒPX˜I bUS EGx8VUwxS`w—– D •
       c dS T c T  ‰ d Y V e S b R b d F T IR IG
        ESUEE“”`G’EGx‘cwxSTU`S e`SwG`%QVIPUˆy‡3Y8WRP8GHTUw†Y€X…QbTPWc 8%„©ƒ‚5USQ¨EQGPHF D 
 Ud `Y`QGIaY8VW€yaHTUxST8Vwvu thsp8rDrDpqi¤QXT8gVfS GUd UV bUSQa`8WR5USQ¨REQGPHF EC
 Vb R c Yb G D hS                                              e c T IYG XV T I IG D
                                                                                                AB9@86986531)
                                                                                                    7 7 4 20
      ¡ $  ! §
       ('%#¡  §© ¡©¨¥¦¤¡¢ 
                         § ¥ ¥ § £
) '     ©
   ($%#!¨
Traductores
¤¦¥¥¥£¤¢  
§¤¦¥¦¥££¥¤¡¢
 § ¦ £ ¡
Tokens del Lenguaje




                                                    1.- OPARITMETICO { +,-,/,%,=,^}

                           Expresiones
                                                    2.- OPLOGICO {8,|,!,#}
                           (operadores)

                                                     3.- OPRELACIONAL {,,,=,=,==,!=}


           Acciones        Instrucciones            4.- PALABRAR
                                                    {lee,imprime,limpia,principal}


                            Estructura              5.- PALABRAR
                            De                      {si,no,opcion,caso,para,mientras,repite}
                            Control




                         Tipo de dato              4.- PALABRAR
Lenguaje                                           {entero,carácter,alfabético,real,boleano, nulo}

                         Modificadores             4.- PALABRAR {constante}

                         VALORES               4.- PALABRAR {verdadero,falso}

                         5.- ID                    Nombre de variable y métodos

            Datos        6.- ENTERO

                         7.- REAL

                         8.- OCTAL

                         9.-
                         HEXADECIMAL
                         10.- CARACTER

                         11.- CADENA


           Delimitador        ; , . () {} [] ” ’
) '     ©
   ($%#!¨
Traductores
¤¦¥¥¥£¤¢  
§¤¦¥¦¥££¥¤¡¢
 § ¦ £ ¡
    © ¤%¢ )
                                                                            £ ' ¡          ¨¦
                                                                                          § ¥            ¨©
                                                                                                         §        (%(%'
                                                                                                                    ) '            




%{

/* -------------------------------------------------- */
/* Analizador Lexico                                     */
/* clase-02b español.l
/* -------------------------------------------------- */
to_upper(char *str) {
   char * cp;
   for (cp=str; *cp; cp++) {
      if (islower(*cp)) *cp -= ('a' - 'A');
   }
}

%}
CARACTER [a-zA-z]
TERMINALES [ar|AR|er|ER|ir|IR]
VERBO {CARACTER}*TERMINALES?
ADVERBIO {CARACTER}*+MENTE
SUSTANTIVO [a-zA-Z]([a-zA-Z])*+

PREPOSICION [A|ANTE|BAJO|CON|DE|DESDE|EN|ENTRE|PARA|POR|SIN|SOBRE]
CONJUNCIONES [Y|O]
SPACE [ t]


%%
{SUSTANTIVO}                                   if ( buscaenlista() ) {
                                                  printf (“Nombre propio”)
                                               } else {
                                                  printf(Sustantivo: %sn,yytext);
                                               }
{VERBO}                                         printf(Verbo: %sn,yytext);
{ADVERBIO}                                      printf(Adverbio: %sn,yytext);
{PREPOSICION}                                   {printf(Preposicion: %sn,yytext);}
{CONJUNCIONES}                                  {printf(Conjuncion: %sn,yytext);}
{SUSTANTIVO}                                    printf(SUSTANTIVO: %sn,yytext);
{SPACE}                                         ;/*no action */

%%

yywrap() {
  printf(FIN %sn,yytext);
  return 1;
}

main(int argc, char **argv) {
  ++argv, --argc; /*skip over program name */
  if (argc 0)
     yyin = fopen (argv[0], r);
  else
     yyin = stdin;
  yylex();
}



                                                                                        JGS /883 / Parcial 1 / Clase 2 / Serial 12
¥¤¢% 
                                          ¡ £ ¡ ©         ©¨§© ¤
                                                              ¡ ¡¦ ¡                    




a)   Realizar la planeación de la etapa (IDE, Análisis léxico) en MS-
     Project; descripción detallada de actividades, tiempo asignado a
     cada actividad, actividades de c/u de los miembros del equipo.
     Impresión tabular y diagrama de GANT. Incluya el tiempo
     dedicado a clases y de desarrollo externo mínimo (8 hr. /
     semanales / por c/u de los miembros del equipo).

b)   Iniciar el desarrollo del analizador léxico y el IDE.

c)   Iniciar la documentación del proyecto

     •     Documentación del API, estilo Javadoc
     •     Diagramas UML

c)   Integrar (empleando la tarea individual 1.1) la documentación
     teórica de la etapa.

d)   Dar seguimiento (actualizar) a la planeación de la etapa en MS-
     Project (inciso a)




                                                    JGS /883 / Parcial 1 / Clase 3 / Serial 13
¡
¤%'
  ¡         ¡   ¢   ©   §         $
                                 ¡ ©
Traductores
¤¦¥¥¥£¤¢  
§¤¦¥¦¥££¥¤¡¢
 § ¦ £ ¡
¤ ¦ © ¨©¦ ¦ ¤ ¥
           ¦©§§¨ ©§§¥£ £
            ¤  ¤
   ¡¢) ©¡   
¡ ¡
  © ¨¦    ©   ¡               
                           © £ ¡¢§  
Traductores
¤¦¥¥¥£¤¢  
§¤¦¥¦¥££¥¤¡¢
 § ¦ £ ¡

Weitere ähnliche Inhalte

Andere mochten auch

Hobohm Et Al Trends In Bibliotheken
Hobohm Et Al Trends In BibliothekenHobohm Et Al Trends In Bibliotheken
Hobohm Et Al Trends In BibliothekenZukunftswerkstatt
 
MALLA CURRICULAR 2009 - Escuela de marketing y negocios internacionales
MALLA CURRICULAR  2009 - Escuela de marketing y negocios internacionalesMALLA CURRICULAR  2009 - Escuela de marketing y negocios internacionales
MALLA CURRICULAR 2009 - Escuela de marketing y negocios internacionalesCecilia Rivera Lopez
 
Die virtuelle Zweigstelle: Bibliotheken in Facebook, MySpace, StudiVZ & Co.
Die virtuelle Zweigstelle: Bibliotheken in Facebook, MySpace, StudiVZ & Co.Die virtuelle Zweigstelle: Bibliotheken in Facebook, MySpace, StudiVZ & Co.
Die virtuelle Zweigstelle: Bibliotheken in Facebook, MySpace, StudiVZ & Co.Zukunftswerkstatt
 
Como se produce el café en colombia
Como se produce el café en colombiaComo se produce el café en colombia
Como se produce el café en colombiaefrainmoraa
 
Guia de primer semestre
Guia de primer semestreGuia de primer semestre
Guia de primer semestreArkana Digital
 
Localized multi feature metric learning for image set based face recognition
Localized multi feature metric learning for image set based face recognitionLocalized multi feature metric learning for image set based face recognition
Localized multi feature metric learning for image set based face recognitionShakas Technologies
 
11 operaciones navales en la provincia de castellon
11 operaciones navales en la provincia de castellon11 operaciones navales en la provincia de castellon
11 operaciones navales en la provincia de castellonaulamilitar
 
Agenda Akademis awal kuliah 2011.jpg
Agenda Akademis awal kuliah 2011.jpgAgenda Akademis awal kuliah 2011.jpg
Agenda Akademis awal kuliah 2011.jpgNurdin Al-Azies
 
2_Real_Number_Graphic_Organizer_with_examples_solutionsx
2_Real_Number_Graphic_Organizer_with_examples_solutionsx2_Real_Number_Graphic_Organizer_with_examples_solutionsx
2_Real_Number_Graphic_Organizer_with_examples_solutionsxnechamkin
 
Praktische info surgical skills 2013
Praktische info surgical skills 2013Praktische info surgical skills 2013
Praktische info surgical skills 2013Erik Groot Jebbink
 

Andere mochten auch (20)

Hobohm Et Al Trends In Bibliotheken
Hobohm Et Al Trends In BibliothekenHobohm Et Al Trends In Bibliotheken
Hobohm Et Al Trends In Bibliotheken
 
Halloween
Halloween Halloween
Halloween
 
3.interview list
3.interview list3.interview list
3.interview list
 
MALLA CURRICULAR 2009 - Escuela de marketing y negocios internacionales
MALLA CURRICULAR  2009 - Escuela de marketing y negocios internacionalesMALLA CURRICULAR  2009 - Escuela de marketing y negocios internacionales
MALLA CURRICULAR 2009 - Escuela de marketing y negocios internacionales
 
Die virtuelle Zweigstelle: Bibliotheken in Facebook, MySpace, StudiVZ & Co.
Die virtuelle Zweigstelle: Bibliotheken in Facebook, MySpace, StudiVZ & Co.Die virtuelle Zweigstelle: Bibliotheken in Facebook, MySpace, StudiVZ & Co.
Die virtuelle Zweigstelle: Bibliotheken in Facebook, MySpace, StudiVZ & Co.
 
Como se produce el café en colombia
Como se produce el café en colombiaComo se produce el café en colombia
Como se produce el café en colombia
 
Guia de primer semestre
Guia de primer semestreGuia de primer semestre
Guia de primer semestre
 
201506 CSE340 Lecture 12
201506 CSE340 Lecture 12201506 CSE340 Lecture 12
201506 CSE340 Lecture 12
 
Localized multi feature metric learning for image set based face recognition
Localized multi feature metric learning for image set based face recognitionLocalized multi feature metric learning for image set based face recognition
Localized multi feature metric learning for image set based face recognition
 
Folder ueg (1)
Folder ueg (1)Folder ueg (1)
Folder ueg (1)
 
Merino ruiz-areñi-6 b
Merino ruiz-areñi-6 bMerino ruiz-areñi-6 b
Merino ruiz-areñi-6 b
 
201505 CSE340 Lecture 06
201505 CSE340 Lecture 06201505 CSE340 Lecture 06
201505 CSE340 Lecture 06
 
11 operaciones navales en la provincia de castellon
11 operaciones navales en la provincia de castellon11 operaciones navales en la provincia de castellon
11 operaciones navales en la provincia de castellon
 
Agenda Akademis awal kuliah 2011.jpg
Agenda Akademis awal kuliah 2011.jpgAgenda Akademis awal kuliah 2011.jpg
Agenda Akademis awal kuliah 2011.jpg
 
Excel Practica 3 trabajo
Excel Practica 3 trabajoExcel Practica 3 trabajo
Excel Practica 3 trabajo
 
2_Real_Number_Graphic_Organizer_with_examples_solutionsx
2_Real_Number_Graphic_Organizer_with_examples_solutionsx2_Real_Number_Graphic_Organizer_with_examples_solutionsx
2_Real_Number_Graphic_Organizer_with_examples_solutionsx
 
Презентация -4 "a“
Презентация -4 "a“Презентация -4 "a“
Презентация -4 "a“
 
Facebook stats
Facebook statsFacebook stats
Facebook stats
 
Praktische info surgical skills 2013
Praktische info surgical skills 2013Praktische info surgical skills 2013
Praktische info surgical skills 2013
 
Isaac
IsaacIsaac
Isaac
 

Ähnlich wie Curso de Traductores

Two Years of Drought Response in Ethiopia_June 2016
Two Years of Drought Response in Ethiopia_June 2016Two Years of Drought Response in Ethiopia_June 2016
Two Years of Drought Response in Ethiopia_June 2016Bethlehem Woldeyohannes, MA
 
Adiestramiento de perros de caza
Adiestramiento de perros de cazaAdiestramiento de perros de caza
Adiestramiento de perros de cazaLuis Vera
 
Pesquisa do IAC e ESALQ indicam cultivares de milho para silagem no Estado de...
Pesquisa do IAC e ESALQ indicam cultivares de milho para silagem no Estado de...Pesquisa do IAC e ESALQ indicam cultivares de milho para silagem no Estado de...
Pesquisa do IAC e ESALQ indicam cultivares de milho para silagem no Estado de...Agricultura Sao Paulo
 
Faith & Hope Counselling Services,
Faith & Hope Counselling Services,Faith & Hope Counselling Services,
Faith & Hope Counselling Services,Sreevaru Surender
 
Lista de precios de automatización 01032012 rev.0
Lista de precios de automatización 01032012 rev.0Lista de precios de automatización 01032012 rev.0
Lista de precios de automatización 01032012 rev.0Daniel García
 
SSRN-id2842408_2
SSRN-id2842408_2SSRN-id2842408_2
SSRN-id2842408_2nabaz4u
 
Poly exoc mm
Poly exoc mmPoly exoc mm
Poly exoc mmALAGSdsss
 
Lx7iiug es
Lx7iiug esLx7iiug es
Lx7iiug esdany696
 
Panel de Cype estructuras
Panel de Cype estructurasPanel de Cype estructuras
Panel de Cype estructurasDavid Pérez
 
AnalytiX Mapping Manager - ETL Integration Library
AnalytiX Mapping Manager - ETL Integration LibraryAnalytiX Mapping Manager - ETL Integration Library
AnalytiX Mapping Manager - ETL Integration LibraryAnalytixDataServices
 

Ähnlich wie Curso de Traductores (20)

Two Years of Drought Response in Ethiopia_June 2016
Two Years of Drought Response in Ethiopia_June 2016Two Years of Drought Response in Ethiopia_June 2016
Two Years of Drought Response in Ethiopia_June 2016
 
Mgd06 lab01
Mgd06 lab01Mgd06 lab01
Mgd06 lab01
 
Mgd10 lab02
Mgd10 lab02Mgd10 lab02
Mgd10 lab02
 
Adiestramiento de perros de caza
Adiestramiento de perros de cazaAdiestramiento de perros de caza
Adiestramiento de perros de caza
 
2017.hab.Mike
2017.hab.Mike2017.hab.Mike
2017.hab.Mike
 
Mgd09 lab02
Mgd09 lab02Mgd09 lab02
Mgd09 lab02
 
Pesquisa do IAC e ESALQ indicam cultivares de milho para silagem no Estado de...
Pesquisa do IAC e ESALQ indicam cultivares de milho para silagem no Estado de...Pesquisa do IAC e ESALQ indicam cultivares de milho para silagem no Estado de...
Pesquisa do IAC e ESALQ indicam cultivares de milho para silagem no Estado de...
 
Faith & Hope Counselling Services,
Faith & Hope Counselling Services,Faith & Hope Counselling Services,
Faith & Hope Counselling Services,
 
2015 Senior Design
2015 Senior Design2015 Senior Design
2015 Senior Design
 
07 Momento Novo Julho
07 Momento Novo Julho07 Momento Novo Julho
07 Momento Novo Julho
 
Postgre sql tutorial
Postgre sql   tutorialPostgre sql   tutorial
Postgre sql tutorial
 
Lista de precios de automatización 01032012 rev.0
Lista de precios de automatización 01032012 rev.0Lista de precios de automatización 01032012 rev.0
Lista de precios de automatización 01032012 rev.0
 
Enem 2012 dia1_branco
Enem 2012 dia1_brancoEnem 2012 dia1_branco
Enem 2012 dia1_branco
 
SSRN-id2842408_2
SSRN-id2842408_2SSRN-id2842408_2
SSRN-id2842408_2
 
Kabar jkpp 13
Kabar jkpp 13Kabar jkpp 13
Kabar jkpp 13
 
Poly exoc mm
Poly exoc mmPoly exoc mm
Poly exoc mm
 
soutenance3
soutenance3soutenance3
soutenance3
 
Lx7iiug es
Lx7iiug esLx7iiug es
Lx7iiug es
 
Panel de Cype estructuras
Panel de Cype estructurasPanel de Cype estructuras
Panel de Cype estructuras
 
AnalytiX Mapping Manager - ETL Integration Library
AnalytiX Mapping Manager - ETL Integration LibraryAnalytiX Mapping Manager - ETL Integration Library
AnalytiX Mapping Manager - ETL Integration Library
 

Mehr von Javier Gonzalez-Sanchez (20)

201804 SER332 Lecture 01
201804 SER332 Lecture 01201804 SER332 Lecture 01
201804 SER332 Lecture 01
 
201801 SER332 Lecture 03
201801 SER332 Lecture 03201801 SER332 Lecture 03
201801 SER332 Lecture 03
 
201801 SER332 Lecture 04
201801 SER332 Lecture 04201801 SER332 Lecture 04
201801 SER332 Lecture 04
 
201801 SER332 Lecture 02
201801 SER332 Lecture 02201801 SER332 Lecture 02
201801 SER332 Lecture 02
 
201801 CSE240 Lecture 26
201801 CSE240 Lecture 26201801 CSE240 Lecture 26
201801 CSE240 Lecture 26
 
201801 CSE240 Lecture 25
201801 CSE240 Lecture 25201801 CSE240 Lecture 25
201801 CSE240 Lecture 25
 
201801 CSE240 Lecture 24
201801 CSE240 Lecture 24201801 CSE240 Lecture 24
201801 CSE240 Lecture 24
 
201801 CSE240 Lecture 23
201801 CSE240 Lecture 23201801 CSE240 Lecture 23
201801 CSE240 Lecture 23
 
201801 CSE240 Lecture 22
201801 CSE240 Lecture 22201801 CSE240 Lecture 22
201801 CSE240 Lecture 22
 
201801 CSE240 Lecture 21
201801 CSE240 Lecture 21201801 CSE240 Lecture 21
201801 CSE240 Lecture 21
 
201801 CSE240 Lecture 20
201801 CSE240 Lecture 20201801 CSE240 Lecture 20
201801 CSE240 Lecture 20
 
201801 CSE240 Lecture 19
201801 CSE240 Lecture 19201801 CSE240 Lecture 19
201801 CSE240 Lecture 19
 
201801 CSE240 Lecture 18
201801 CSE240 Lecture 18201801 CSE240 Lecture 18
201801 CSE240 Lecture 18
 
201801 CSE240 Lecture 17
201801 CSE240 Lecture 17201801 CSE240 Lecture 17
201801 CSE240 Lecture 17
 
201801 CSE240 Lecture 16
201801 CSE240 Lecture 16201801 CSE240 Lecture 16
201801 CSE240 Lecture 16
 
201801 CSE240 Lecture 15
201801 CSE240 Lecture 15201801 CSE240 Lecture 15
201801 CSE240 Lecture 15
 
201801 CSE240 Lecture 14
201801 CSE240 Lecture 14201801 CSE240 Lecture 14
201801 CSE240 Lecture 14
 
201801 CSE240 Lecture 13
201801 CSE240 Lecture 13201801 CSE240 Lecture 13
201801 CSE240 Lecture 13
 
201801 CSE240 Lecture 12
201801 CSE240 Lecture 12201801 CSE240 Lecture 12
201801 CSE240 Lecture 12
 
201801 CSE240 Lecture 11
201801 CSE240 Lecture 11201801 CSE240 Lecture 11
201801 CSE240 Lecture 11
 

Kürzlich hochgeladen

Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxAlexander López
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 

Kürzlich hochgeladen (20)

Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 

Curso de Traductores

  • 1. ¦¦¨¦£¤¢  ¡ © § ¥ ¡ D£FE¤DCBA@48¡6 G 7 ©¡ £ 6 ¡ 97 43 ) # 1(( 5 ' 2 0)' %$#! 1 Presentación del curso 2 Conceptos generales y modelo funcional de un Tareas de la primera sesión presencial traductor (consultar la pagina web) 3 Características de un (IDE) Ambiente Integrado de Desarrollo 4 Análisis léxico, conceptos e ideas. Aplicar y Tareas de la segunda sesión presencial conocer en desarrollo de analisador para un (consultar la pagina web) traductor. 5 Diagramas de transición. Codificación Lex/Flex 6 Definición de los tokens del lenguaje a Tareas de la tercera sesión presencial desarrollar (consultar la pagina web) 7 Examen parcial 8 Revisión de la 1era. etapa parcial del proyecto Tareas de la cuarta sesión presencial (consultar la pagina web)
  • 2. ¨7E¦ © © £ ¨ ¡ ¦¤6 Traductores ¤¦¥¥¥£¤¢   §¤¦¥¦¥££¥¤¡¢ § ¦ £ ¡
  • 3. cX Ytf gGx wvY`bXusgd`csf c X a fd X sf rigq7QpchigecGbaY`GW UUV SGER@ FFG9 B¤ 8967 SE E B 86 V TS TS GR@QQPIPI88 HH GE9DCDC¤A@A@9755344 3 ##((2¤1$!%$)0( '%#$! ©©¨§¦§¥£¤¡¢ ((¤$$0#($ §§¡¥¤¢   21!%) # '%#! ¨¦¡ £¡ ¨ 7 © £ ¨ E¦ © ¡ ¦¤6 Traductores ¤¦¥¥¥£¤¢   §¤¦¥¦¥££¥¤¡¢ § ¦ £ ¡
  • 4. JGS /883 / Parcial 1 / Clase 1 / Serial 1 !¡§¨¦¤¢  © ¥ £ ¡ !¡§¨¦¤¢  © ¥ £ ¡ 0¨e¨ $ 10'UF¨§dQG`Y0 c ¡© © §F© F ¡ ( g £ 0 ¢¨¨¦Vfe c C¡ ¤$ 50A@8506504¤ 2 B 9 7 ( 3 I©¨¦¤¢  § ¥ £ ¡ $ 1''¡¢¡¨'© %# 0 ) ( ¡ $ ( $ HG¢¡ ED F $ semestre XC¡ ¤$ 50A@8506504¤ 2 B 9 7 ( 3 ¢IW£VU)'UF T F ¡ $ 1''¡¢¡¨'© %# 0 ) ( ¡ $ $ 10 $ RS QP § ) $ 0VQ $ ¡UF b$ a¢5IU`Y05¨4¦¢ 2 ¡© 7 T F© £ v p q s q r qp i qf¢iut¢'¢Y¢1h
  • 5. !¨§¥¦¢ Vi ©iuYq §¨¥¦¢q £¤¢  p r s v q ¥ r qp i © p ¡ v Que el alumno: Sea capaz de aplicar los conceptos relacionados con la teoría formal de lenguajes en el desarrollo de sistemas de traducción; utilizando las herramientas existentes para el diseño de lenguajes de programación. Elaborare un lenguaje para programación de computadores empleando cadenas del idioma español conjuntamente con el compilador y máquina virtual que permitan la implementación del lenguaje definido. Demostrar su habilidad para la comunicación oral y escrita con el lenguaje natural y también utilizando lenguaje matemático y estructuras graficas, en la realización de la documentación para un sistema computacional. Planificar y administrar un proyecto de desarrollo de software, estimando tiempos, organizando actividades y recursos; ser consiente de la importancia que el trabajo en equipo tiene para realizar dichas actividades Actuar de manera responsable y honesta durante la elaboración de trabajos individuales y en equipo además de demostrar su habilidad para trabajar con sus compañeros de clase y aprender por cuenta propia. JGS /883 / Parcial 1 / Clase 1 / Serial 2
  • 6. JGS /883 / Parcial 1 / Clase 1 / Serial 3 aD5`TXWV5TSD¢54H I QY R U I R Q P I 5 § E C A £ 6 ¦G !F¦5D¦BA¤¡6 @ '#$¦937 © © ¨§¥¦¤¡¢  § ¡ 8 6 § £ OPR 0, AX } CAL 1, AX patito (); LOD _E1, AX principal () { OPR 21, AX 5¤43§21£¦0¦)( ¥ 0 ¥ £ LIT 5, AX §#£ '¤%#$¡§! © §© ¨§¥¦¤¢  £¡ } STO x, AX imprime (5); OPR 19, AX lee (x); @ patito () { |# funcion entera _E1,I,I,0,7 §© §© ¨§¥¦¤¢  £¡ # entero x; X,E,G,O,O | p q ¢ i@bgeq p hp q v f d c 2b
  • 7. ¤£¤¨¦ ¥¤¢  ¡ © § ¡£ ¡ JGS /883 / Parcial 1 / Clase 1 / Serial 4
  • 8. § ¤¡ ¦ Lexico Interprete Traductor Compilador Token-lexema Analisis Lenguaje Sintesis Automatas Expresion Finitos Regular Tabla Sintactico Simbolos Semantico Codigo Gramaticas Ecuación Ecuación Traduccion Esquemas Atributo Diagramas Ebnf Parser LL(1), Estructura Esquema de Tabla Tokens Predictivo, E. de Datos M.V. semantica Traduccion descendente ¤©¦¥¦¤¢  £ ¨ § £¡ JGS /883 / Parcial 1 / Clase 1 / Serial 5
  • 9.   ¤¡ ¤ § ¥¢§ £ ¡ Define tu propio lenguaje de programación en español Y construye un compilador para él Tlatoni, JavaÑol, Jamaica, IDE2001, Etc. Documentalo Tlatoni How To Program Aprendiendo a construir un compilador en 24 horas Compiladores for dummies.. Etc. JGS /883 / Parcial 1 / Clase 1 / Serial 6
  • 10. § ¥ ¢§ ¤ § ¡ ¥§ ¡ £   © Tecnologias de Compiladores Avances en Lenguajes de Programación. Eduardo Pierdant Alberto Borbolla Microsoft México Air-Go Technologies (fragmento) (fragmento) ¿por qué nuevos lenguajes? ¿dónde? ¿cómo? ¿para qué? Comunidad académica “sencillo” – alcanzable – ¿mejorable? – proyecto real - multidiciplinario JGS /883 / Parcial 1 / Clase 1 / Serial 7
  • 11. § ¡¡ © ¤¦   ¡ programador documentador tester quality 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Examen Parcial Revisión Etapa 1 Examen Parcial IDE + Revisión Etapa 3 Lexico Semantica + Generar Codigo Examen Parcial Revisión Etapa 2 Examen Final Presentación Sintaxis + Tabla Simbolo MV JGS /883 / Parcial 1 / Clase 1 / Serial 8
  • 12. £¢  ¤¡ © ¡ ¡  Desempeño individual Examenes rapidos y parciales Trabajo en Equipo Rubrica (por etapa y final) Documentación Rubrica (por etapa y final) Producto Rubrica (por etapa y final) JGS /883 / Parcial 1 / Clase 1 / Serial 9
  • 13. ©£¢  ¤¡ ¡ ¡  Calificación por parcial © 2)#!©FEC % 1 © 0 $ D ¤£¡` ¢£2§¥ Y 8 © 1 © ¤  X£¦0 %AWV1!UT¢EA' QP AI%HG#' 21#££#!6FEC ¦ 0 ¦ S R © % % ' $ 8 ¦ % 0 © 8 $ D ¤  © 20)©B© )B ¦ A2@©9£ % 1 © © 0 ¨ ' ¦11 8 2!7¨ %453 ©1 ¦ 6 ¤  2!7¨ !453© 20)¨(© )'(! ©#!£ ©1 ¦ 6 % % 1 © © 0 © $ % ¨ $ ¦ ¤  £§¥ ©¨ ¦ £¡£¢  ¤ ¡ *Las tareas se evalúan de 0 a 5 pts., se considera parte de la evaluación la presentación del trabajo, inclusión de referencias bibliográficas, así como la redacción y contenido. Calificación final ” u di AHVAyAdvV!u – p € …ƒ i — – u w u t • s cdb “ pV€7v’f !9dvVAV‰‡9AHƒV‚ i w x w € … i h w u t ‘ … f ˆ † f h … u „ f cdb q Vw7yduvtV!r p i € x w i s cdb q pVi9Age h f c dbVba Proyectos parciales y final Desarrollo de un compilador para un lenguaje estructurado y una maquina virtual capaz de ejecutar el código intermedio del lenguaje anterior. Parcial 1. Ambiente integrado de desarrollo (IDE), analizador léxico. Parcial 2. Analizador Sintáctico, administrador de errores, tabla de símbolos. Parcial 3. Análisis semántico, generación de código. Proyecto final. Máquina virtual y unión de piezas. JGS /883 / Parcial 1 / Clase 1 / Serial 10
  • 14. ! ¥¢¨§¥¢¢  ¡ © ¤ ¦ ¡ © £ ¦ ¤ £ ¡ 1. Introducción: proceso y etapas de compilación, teoría formal de lenguajes. 2. Análisis léxico: autómatas de estados finitos, expresiones regulares 3. Análisis sintáctico: gramáticas y metodologías de reconocimiento 4. Definición de la tabla de símbolos 5. Análisis semántico: verificar tipos, flujo y unicidad. 6. Generación de código intermedio. 7. Diseño de maquinas virtuales e interpretación de código intermedio 5420(¨¡ $¨$© )3 1 ) ' ©% # • Compiler Design. Reinhard Wilhelm, Addisson Wesley 1995. • Compiladores, principios, tecnicas y herramientas. Aho, Sethi, Ullman. Addisson Wesley 1990. • Compiler construction. Kenneth Louden PWS 1997 • Advanced Programming Languaje design. Raphael Finkel. Addison Wesley 1996 JGS /883 / Parcial 1 / Clase 1 / Serial 11
  • 15. ! ¤ ¢ ¢ ¦ ¨¨(¨¡  ) !© © ¤ ) ¦ ¡ ¡ (© ¨ ¡    ©   PUNTUALIDAD Y ASISTENCIA. • Lista de asistencia al inicio de la clase. La salida de clase es 15 minutos antes de la siguiente hora. CRITERIOS PARA EXÁMENES. • Basamos este curso en la honestidad, por ello, si la confianza en tí depositada es defraudada por copiar en un examen o entregar como tuyo un proyecto que no realizaste, existe una sanción. REVISIÓN DE EXÁMENES Y PROYECTOS. • Sólo puedes efectuar la revisión en el salón a la hora y fecha acordada, después no hay correcciones. • En la revisión de los proyectos por equipo deberán estar presentes todos los integrantes del equipo. El profesor preguntará sobre el proyecto a cualquier integrante del equipo para evaluar el trabajo realizado. TAREAS. TAREAS. • NO se reciben tareas despues de la fecha de entrega. • Todas las tareas y/o proyectos deberán incluir portada o encabezado con los datos del alumno y bibliografía. ORDEN Y LIMPIEZA EN EL SALÓN DE CLASE. • Por políticas del ITESM, no está permitida la entrada de alimentos y bebidas al aula ni fumar. HORAS DE ESTUDIO. • Al tratarse de una materia de 8 unidades, significa que son 3 horas clase a la semana con 5 horas de trabajo fuera de ella. Haciendo así un total de 8 horas de estudio para esta materia a la semana. JGS /883 / Parcial 1 / Clase 1 / Serial 12
  • 16. ! © ' $ ! © )(!%#© ¨ Traductores ¤¦¥¥¥£¤¢   §¤¦¥¦¥££¥¤¡¢ § ¦ £ ¡
  • 17. JGS /883 / Parcial 1 / Clase 2 / Serial 13 ) C 4T ( 2m E GE xU4 ) 2 S 2 2 c (m GE ¨w —˜–B6 (' @ 45 '5 H8(7D5A4 ' I dB5A86 ) n'AR H'FE 2 4 – 4 2 2I @(' Q(' —˜–2F@ ‡ 4AI 4 AI 5 S56 2 – ('AI 7B@ 2A) —YI S FE B6 )Ad(¨¢@ F 2@ QAS AS ' 2 S – 4@ 2 ) S AA86 Q‡S FE BFE 86 ) $¢@ F 2@ QAS AS ' 26 S 2@ 2 ) FE 3a14 Qd@ F 2@ QAS )AS ' 2 2 @ $@H86 ) Fv‘@ F 2@ QAS )AW4A•' QA4AH'dq$YgxuYwv! nqtYdYGY s 2 4 2@ u 2 S I I – # ! f e h p i j ij ! e j i‚  p i j i p f i p yYwhvr 9iYqƒ3qi €wYdYg!Aqqi p X ' S 22) 2o d p YAI FE D† AR (q‰ gfFqnhi i X( 2m FE DBH(FEWAPHS R Al ) E C56@ ) ' 4 I @ Q 4 f #(kjftgupf i X ' 2† ' S S C I S Y86 2A) D•86 4 ‡A7† QAW)A94AP@A75A‡AS QAS 9)AdB(7† (FW4 P(' Q(' ‡—˜–2F•A•86 AC”U((% c S –5 ' ) 'E C h @ @ 4I ' ) T)' ‰! gtgi € # f f XY86 4 (7† QAW)A94AP@HD6 )A4 ()A1e7Acd@A' ' —˜–F•APHS AAI (% ' ‡ S S C I 4 2 4 0 '5 Q ‡ 2 @ 4 I @ ) 4 S vqqgxq™ # “ X S G@H75A‡AS QAS 94AW(' GFE DB¨H(FWS 9)AP@A'AI ˜2QA1‘@A' (' —g–F•A•'86 A) 2D•86 AC”U((% c I ) 2 E C56@ ) 'E Q 4 S0 Q ‡ 2@ 4I 2 † ' ) T)' # ! i “ x ‰qB’g‘ 'AI FE B† 2AR $v$AS R 8‰86 4 A7† t…vƒ3qi € S 2 ) 2 @ ˆ @ Q 45 ˆ ' ‡ S Q „ # i‚  p y ! f e h ¨YguxYwv! rsY¨qupftspq9hgYeYP F(d A' c BPA47B6WA48@ 3b` i i e i r i i f ! e ! @ 26 @ 5 ) 6 2 a X '5 ' S 4T C Q C I ) 2 C56 @ 2 5 2 0 ) ' # ! Y7B6HWWVUS R )A4 9)A94AP@H4H(' GEFE DBA) 94867(4 31((%$ © PGPYvd¢y € z ~ } | { z ¨' )¦¤© ¢   § ¥ £ ¡
  • 18. ¨' )¦¤© ¢   § ¥ £ ¡ • Compilador vs Interprete • Modelo analisis – sintesis de la compilación • Analisis lineal, jerarquico y semantico. • Tabla de simbolos • Manejador de errores • UNIENDO LAS PARTES: el proceso completo de compilación • Compiladores de 1, 2 o N pasos • Herramientas Preprocesadores, ensambladores, cargadores, editores de enlace ¡ ¢  ¡ £ ¡ • Realiza las actividades marcadas como Tarea 1. Introducción descritas en la seccion Parcial 1 de la pagina web del curso http://dcc.gda.itesm.mx/~jagonzal/CB00883/ JGS /883 / Parcial 1 / Clase 2 / Serial 14
  • 19. 9 6 ¢ %3 3 ¡ $ % $   @7801'54%21©0)('©©#!©©¦§¥£ ¨ ¤ %£ ' ¤§ ¨ © £ (¤ ' ¡ • Ventana 1. Editor de Texto • Ventana 2. Notificación de Errores RQH B T B 2D T0S RRQI1F2ECA H F PH G D B X W W CU V CecCU f d b a g • Menú: `@Y Guardar,Abrir, Nuevo h tsrECif g f q U p ` Lexico, Compilar, Ejecutar • IDE tradicional vs Visual X e‚ Ieywu ƒ  € xv yˆ5e5y5„ ƒ‡ x † … ƒv ‰ h gf Q™ e ed ‰j k “y ’ ‘ k el k ˜– y” — • m eh l k h gf Q™ e ed ˆo yl p n d ˆi e d ˆi e •Actividad Recomendada : Desarrollar un IDE visual. (10 puntos sobre calificación final) Nota : Los programas visuales tambien deben guardarse/abrirse JGS /883 / Parcial 1 / Clase 2 / Serial 15
  • 20. ) ' © ($%#!¨ Traductores ¤¦¥¥¥£¤¢   §¤¦¥¦¥££¥¤¡¢ § ¦ £ ¡
  • 21. (%#!¡¨ ) ' $   © Código Lexema Token caracteres Tokens Conjunto Fuente Analisis de *.txt Léxico Patrones Linea Clase Descripcion admon Lista de IDE de Errores Errores CONCEPTOS • Alfabeto, palabra o cadena, lenguaje NOTACION |s| longitud de la cadena s ∈ cadena vacía (| £ | = 0) xy concatenación de las cadenas x,y (x £ = £x = x) sn s0=∈, s1=s, s2=ss, etc. prefijo eliminar cero o más caracteres al final de una palabra. sufijo eliminar cero o más caracteres al inicio de la palabra. subcadena eliminar cero o más caracteres al inicio y al final subcadena propia de s ≠ s subsecuencia subcadena generada al eliminar cero o más caracteres no consecutivos de una palabra JGS /883 / Parcial 1 / Clase 2 / Serial 7
  • 22. (%#!¡¨ ) ' $   © OPERACIONES SOBRE LENGUAJES unión L1 U L2 = L1 | L2 = s/s está en L1 o L2 concatenación L1L2 = st/ s esta en L1 y t esta en L2 cerradura L* = conjunto de palabras de cero o N letras. de Klen L* = {L+, £} cerradura L+ = conjunto de palabras de una o N letras. positiva CASOS DE USO a) si D+ = {conjunto de cadenas formadas por números} entonces, el conjunto de los enteros positivos Z se define como {-D+, D+} b) L* | D* = letras, números y cadena vacía c) L(L | D)* = identificadores con carácter inicial El uso de las operaciones anteriores define las asi llamadas expresiones regulares d) Ln|Dn para n 1 es posible ? EXPRESIONES REGULARES a) (a | b)(a | b) = {aa, bb, ba, ab} b) a* = { ∈, a, aa, aaa, aaaa, ... } c) (a | b)* = {∈ ,a, b, aa, bb, ... } JGS /883 / Parcial 1 / Clase 2 / Serial 8
  • 23. JGS /883 / Parcial 1 / Clase 2 / Serial 9 u #   6 4F   2 G WF Q F   I34$ ˆ 5 C6 2 G ‡ `2† 64…Q   7 29 F   I3ƒ £ f   ƒ # CACA3”¦“‘‰ —– •– • ’  ƒ 0£ ¡ ' 6 0G£¤¡ 67 Q I34 '1GveQ   € 3  7 g 2   ¤©6 ¤ f CG£V„VWX' g 7 Q I34 B #0 ¡ ¡ B 6 ƒ B u g ¤©6 Qyf ‚#¦ 5   € B # g F 6 ¤©6 Qyf xA  7 w ¡ uuu ¡ t ¡ s ¡ p ¡ h F 3PTTvbQdQrqbigA©6 ¤ f # CASO DE USO ¨  ¥ £ ©§¦¤¡¢  #    $ © ! ¦  % 0 £ ¡  ' % 1¤¢)(¥¦  £  6 9@A% 89 )7 5 4 23   %   ¥ B ©§EC  £ ¡ B  % ¤DC§¥¦  F ¤# ©  $ )7 5 4 23        6 %  ¥ % %  §¦)0G)' 6 I$3 # H   ¥ £  §¦©§¥P 3£ 5 G 7 Q 9 9# 3 # 7 # 6 2 # 6 6F   ¥ 6 F ¡   XQ¡WV6EUR03¢)' 5 9 2 ©6 G I F   6  F  ¥ 06 ¡ F T¤¡9ES©9©'R  # 6  6 5 4 G 67 Q 2¦ ! a 7 `Y )X F # 5  ¡ F ¥ F ¤¦bA3¡¢  # 6 6 $ a 4©7 H Q 6 F   ¥ 0 6 F' b0e)'(¢PE©d  @ 5 4 G 67 Q A 5 6G!0cFQ¢)§S0PG¡¦©Q¡¢  ¡ ¡  ' ¥ 6 F' ! a 7 4 cF # 6 PROPIEDADES ALGEBRAICAS DE LAS EXPRESIONES REGULARES (%#!¨ ) ' $ ©
  • 24. © — Ce! – – ¨ •– Traductores ¤¦¥¥¥£¤¢   §¤¦¥¦¥££¥¤¡¢ § ¦ £ ¡
  • 25. — Ce – – ¡¨ •– !   © Token: conjunto de palabras regidas por una regla ajustadas a un patrón. Lexema: palabra asociada a un patrón Patrón: regla de ajuste para construir palabras. Expresión regular. AD2¦ r qp! $ 7i AD%h#Bd $ ©( T¤S $¦g $ ¥ B$ ©( c¤2 D¥ !R $ ( f S #3¦ © ©1 (De$C#! #¤%$#! 4 2 %¤D2 d B¦! ¥bab¥ X W ¥ X Gc `G`GG¨YX W Y W X 7¤9¤A VUG ¤S!R T I3¦ © P1)DIHF0¦ © 1 )D( Q3 2 ( G E 2 ¤C$¦ © ¤B¤@8 52(A9 7 6#3¤¦ © 1 0('%$#! 5 4 2 ) £¤¢ ¨¥ ¥ ¨¦¤¢ £§ © ¢ © § ¥£ £ ¤¢ Para definir la gramática del lenguaje los tokens serán los elementos fundamentales. IMPLEMENTACIÓN DE ANALISIS LÉXICO : DTE IMPLEMENTACIÓ LÉ Representación gráfica de un patrón: a) Estado Inicial, Estado, Estado de aceptación b) Transiciones CODIFICACIÓN DE UN DIAGRAMA DE TRANSICIÓN DE ESTADOS CODIFICACIÓ TRANSICIÓ Programación estructurada VS Programación Orientada a Objetos CODIFICACIÓN EN LEX/FLEX CODIFICACIÓ JGS /883 / Parcial 1 / Clase 2 / Serial 10
  • 26. JGS /883 / Parcial 1 / Clase 2 / Serial 11 V wwwaEo ˆ bRS‰c V UPR ˜˜I”TkŽ ˆ ey E“ ƒaUSƒwy — ˆ V bIY Ic 8f wwUˆy–8vq ˆ Y bRY ‡Y V Y b bcV‰ T 8f PR aUw`GxU‹ ˆ ‘ Œi ’ Y cS S b T I c T eS Š b TG“d Eo•”`o“%`G w`dwE…Y€QX`QG—wxSU`S `E‹˜V UQ`EwHŽ ˆ ‘8˜‚s„`osk‘Y`G wS`wE…Y€QX`twxSU`S `w˜‹ŠwQ`G ‰ ˆ h h Ž c dS b TGŒ c T eS V T c T R TS ExG`QGI’wxSUvq ˆ vv2’`58xk8#kE6 A{ |x2 @‡ †@ { 2 x 7 } { y @6 0 ‚ y }  z 7 € y 4 |6 } |{ 2 y 7w 2 v’|8H…2Hƒ9‚7U{H9@xkE2q„z8}ƒ8x592x52HE96k89~zH}Pw8¨4Pav©9z2vrx¨vBv `u(ts ¥ ¥ ¡ d b I e R IY I V T IYG TG Xj cwS`weSeUSWxRT`GIa…YcwgS˜TPG %Y8VW€QGPUSwV ef¤%xV`QGa`%Vx`UUY D r T TGR b c b XV D UgSQT`W¤Y…Pc weSe…e…€8vq 8p c T T ExG8xVQT`o D n e bR G V‰m d `S PwY`wY8w`PGHEQGIaYUSIwV ˜ef8d `S…XPEGUwSEPw5UVx`QGa`G UVx`Ujki `h e bR d mGl d T IY c TG X D c TVd b eG D ExG8UwSI %X……b`HF ¦g bR cS d c S bR e T c I™ T c T d TG‰ Y8f PwSEY8eubaw€G`¦d’EG eUEY8V wwS `xG5d’UVWR bƒPX˜I bUS EGx8VUwxS`w—– D • c dS T c T  ‰ d Y V e S b R b d F T IR IG ESUEE“”`G’EGx‘cwxSTU`S e`SwG`%QVIPUˆy‡3Y8WRP8GHTUw†Y€X…QbTPWc 8%„©ƒ‚5USQ¨EQGPHF D  Ud `Y`QGIaY8VW€yaHTUxST8Vwvu thsp8rDrDpqi¤QXT8gVfS GUd UV bUSQa`8WR5USQ¨REQGPHF EC Vb R c Yb G D hS e c T IYG XV T I IG D AB9@86986531) 7 7 4 20 ¡ $ ! § ('%#¡ §© ¡©¨¥¦¤¡¢  § ¥ ¥ § £
  • 27. ) ' © ($%#!¨ Traductores ¤¦¥¥¥£¤¢   §¤¦¥¦¥££¥¤¡¢ § ¦ £ ¡
  • 28. Tokens del Lenguaje 1.- OPARITMETICO { +,-,/,%,=,^} Expresiones 2.- OPLOGICO {8,|,!,#} (operadores) 3.- OPRELACIONAL {,,,=,=,==,!=} Acciones Instrucciones 4.- PALABRAR {lee,imprime,limpia,principal} Estructura 5.- PALABRAR De {si,no,opcion,caso,para,mientras,repite} Control Tipo de dato 4.- PALABRAR Lenguaje {entero,carácter,alfabético,real,boleano, nulo} Modificadores 4.- PALABRAR {constante} VALORES 4.- PALABRAR {verdadero,falso} 5.- ID Nombre de variable y métodos Datos 6.- ENTERO 7.- REAL 8.- OCTAL 9.- HEXADECIMAL 10.- CARACTER 11.- CADENA Delimitador ; , . () {} [] ” ’
  • 29. ) ' © ($%#!¨ Traductores ¤¦¥¥¥£¤¢   §¤¦¥¦¥££¥¤¡¢ § ¦ £ ¡
  • 30.   © ¤%¢ ) £ ' ¡ ¨¦ § ¥ ¨© § (%(%' ) ' %{ /* -------------------------------------------------- */ /* Analizador Lexico */ /* clase-02b español.l /* -------------------------------------------------- */ to_upper(char *str) { char * cp; for (cp=str; *cp; cp++) { if (islower(*cp)) *cp -= ('a' - 'A'); } } %} CARACTER [a-zA-z] TERMINALES [ar|AR|er|ER|ir|IR] VERBO {CARACTER}*TERMINALES? ADVERBIO {CARACTER}*+MENTE SUSTANTIVO [a-zA-Z]([a-zA-Z])*+ PREPOSICION [A|ANTE|BAJO|CON|DE|DESDE|EN|ENTRE|PARA|POR|SIN|SOBRE] CONJUNCIONES [Y|O] SPACE [ t] %% {SUSTANTIVO} if ( buscaenlista() ) { printf (“Nombre propio”) } else { printf(Sustantivo: %sn,yytext); } {VERBO} printf(Verbo: %sn,yytext); {ADVERBIO} printf(Adverbio: %sn,yytext); {PREPOSICION} {printf(Preposicion: %sn,yytext);} {CONJUNCIONES} {printf(Conjuncion: %sn,yytext);} {SUSTANTIVO} printf(SUSTANTIVO: %sn,yytext); {SPACE} ;/*no action */ %% yywrap() { printf(FIN %sn,yytext); return 1; } main(int argc, char **argv) { ++argv, --argc; /*skip over program name */ if (argc 0) yyin = fopen (argv[0], r); else yyin = stdin; yylex(); } JGS /883 / Parcial 1 / Clase 2 / Serial 12
  • 31. ¥¤¢%  ¡ £ ¡ © ©¨§© ¤ ¡ ¡¦ ¡ a) Realizar la planeación de la etapa (IDE, Análisis léxico) en MS- Project; descripción detallada de actividades, tiempo asignado a cada actividad, actividades de c/u de los miembros del equipo. Impresión tabular y diagrama de GANT. Incluya el tiempo dedicado a clases y de desarrollo externo mínimo (8 hr. / semanales / por c/u de los miembros del equipo). b) Iniciar el desarrollo del analizador léxico y el IDE. c) Iniciar la documentación del proyecto • Documentación del API, estilo Javadoc • Diagramas UML c) Integrar (empleando la tarea individual 1.1) la documentación teórica de la etapa. d) Dar seguimiento (actualizar) a la planeación de la etapa en MS- Project (inciso a) JGS /883 / Parcial 1 / Clase 3 / Serial 13
  • 32. ¡ ¤%' ¡ ¡ ¢ © § $ ¡ © Traductores ¤¦¥¥¥£¤¢   §¤¦¥¦¥££¥¤¡¢ § ¦ £ ¡
  • 33. ¤ ¦ © ¨©¦ ¦ ¤ ¥ ¦©§§¨ ©§§¥£ £ ¤ ¤ ¡¢) ©¡  
  • 34. ¡ ¡ © ¨¦ © ¡ © £ ¡¢§   Traductores ¤¦¥¥¥£¤¢   §¤¦¥¦¥££¥¤¡¢ § ¦ £ ¡