Logo Studenta

4 3 Reporte de Analizador Léxico Calculadora PLY

¡Este material tiene más páginas!

Vista previa del material en texto

Instituto Tecnológico Superior 
Progreso 
Dirección General 
Subdirección Académica 
 
 
 
Boulevard Tecnológico de Progreso S/N por 62, Progreso, Yucatán. C.P. 97320 
Tels. 969 934 3023, tecnm.mx | progreso.tecnm.mx 
 
 
 
 
 
 
 
 
 
 Instituto Tecnológico Superior Progreso 
 
CARRERA: 
Ingeniería en Sistemas Computacionales 
 
MATERIA: 
Lenguajes y Autómatas I 
 
TAREA: 
Reporte de Analizador Léxico Calculadora PLY 
 
MAESTRO: 
DR. MARTÍNEZ GARCIA HOLZEN ATOCHA 
 
ESTUDIANTE: 
Miguel Angel De La Cruz Centeno 
 
SEMESTRE: 
6to SEMESTRE 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Instituto Tecnológico Superior 
Progreso 
Dirección General 
Subdirección Académica 
 
 
 
Boulevard Tecnológico de Progreso S/N por 62, Progreso, Yucatán. C.P. 97320 
Tels. 969 934 3023, tecnm.mx | progreso.tecnm.mx 
 
INTRODUCCION 
 
Vamos a ver una librería de Ply en el lenguaje Python, esta librería nos permite desarrollar 
el analizador léxico y el analizador sintáctico de manera más fácil, en el lenguaje Python 
sobre un programa de Calculadora este programa vamos a saber mas sobre estos dos 
temas del léxico y tokens para aprender de cómo actúa y en saber la importancia de esto 
dos. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Instituto Tecnológico Superior 
Progreso 
Dirección General 
Subdirección Académica 
 
 
 
Boulevard Tecnológico de Progreso S/N por 62, Progreso, Yucatán. C.P. 97320 
Tels. 969 934 3023, tecnm.mx | progreso.tecnm.mx 
 
Reporte de Analizador Léxico Calculadora PLY 
En esta parte del código es la parte del analizador léxico pero antes necesitamos conocer 
la sintaxis. 
 
 
La sintaxis que estamos utilizando son los “OPERAR” para hacer la operación 
necesitamos poner la palabra ” Operar” dentro los corchetes colocamos la operación que 
queremos probar y como limitador está el signo de peso “$” que indica el final de la 
cadena, si observamos la sintaxis utilizamos Tokens en la parte de “OPERAR” después 
abrir corchete “[ ]” es otro tokens también adentro de los corchete son otros Tokens todo 
esta línea son Tokens ahora n debemos definir cuales Tokens vamos a utilizar y esto lo 
hacemos en el analizador léxico todo esto lo vamos hacer en la librería “FLY”. 
 
 
 
 
 
 
 
Instituto Tecnológico Superior 
Progreso 
Dirección General 
Subdirección Académica 
 
 
 
Boulevard Tecnológico de Progreso S/N por 62, Progreso, Yucatán. C.P. 97320 
Tels. 969 934 3023, tecnm.mx | progreso.tecnm.mx 
 
 
 
Lo primero que vamos hacer es definir los Tokens en este caso son”OPERAR, 
NUMEROS, APARENT, CPARENT, SUM, RES, MULT, DIV, POT, DECIMAL, ACOR, 
CCOR y FINAL. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Instituto Tecnológico Superior 
Progreso 
Dirección General 
Subdirección Académica 
 
 
 
Boulevard Tecnológico de Progreso S/N por 62, Progreso, Yucatán. C.P. 97320 
Tels. 969 934 3023, tecnm.mx | progreso.tecnm.mx 
 
Ahora necesitamos definir una expresión regular que identifique cuando ocurre ese 
Tokens entonces utilizamos esta sintaxis, la “t_OPERAR” es oara llamar a OPERAR ahora 
para abrir paréntesis es la “t_APARENT” su expresión regular seria “ r’\’( ” ahora para 
cerrar paréntesis se utiliza el Tokens ”t_CPARENT” y su expresión regular es “ r’\)’” y así 
con los demás para abrir corchete, cerrar corchetes, la suma, la resta, la multiplicación, 
etc. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Instituto Tecnológico Superior 
Progreso 
Dirección General 
Subdirección Académica 
 
 
 
Boulevard Tecnológico de Progreso S/N por 62, Progreso, Yucatán. C.P. 97320 
Tels. 969 934 3023, tecnm.mx | progreso.tecnm.mx 
 
Como estamos utilizando números enteros y decimal tenemos que definir Tokens para 
cada uno de ellos así que tenemos los Tokens decimales y los Tokens de números, donde 
l expresión regular de la línea 24, dice que debe ser un numero de uno o mas dígitos 
seguido de un punto y que finalice con uno o más dígitos, si sale todo bien se va signar al 
valor Value y si ocurre una decepción se generaría un error como se ve en la imagen y así 
igual con los números 
 
 
Como se puede observar en esta pestaña se importó la librería “Ply” en la línea 12, se 
importo lo que sería la librería ply léxico ese es para el analizador léxico y la línea 13, es 
para el analizador sintáctico. 
 
 
 
 
 
 
 
Instituto Tecnológico Superior 
Progreso 
Dirección General 
Subdirección Académica 
 
 
 
Boulevard Tecnológico de Progreso S/N por 62, Progreso, Yucatán. C.P. 97320 
Tels. 969 934 3023, tecnm.mx | progreso.tecnm.mx 
 
 
 
 
Después tenemos el analizador sintáctico. 
 
 
 
 
 
 
 
Instituto Tecnológico Superior 
Progreso 
Dirección General 
Subdirección Académica 
 
 
 
Boulevard Tecnológico de Progreso S/N por 62, Progreso, Yucatán. C.P. 97320 
Tels. 969 934 3023, tecnm.mx | progreso.tecnm.mx 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Instituto Tecnológico Superior 
Progreso 
Dirección General 
Subdirección Académica 
 
 
 
Boulevard Tecnológico de Progreso S/N por 62, Progreso, Yucatán. C.P. 97320 
Tels. 969 934 3023, tecnm.mx | progreso.tecnm.mx 
 
Explicando alguna parte de los Tokens, sintáctico y léxico probamos si agarra la 
calculadora. 
 
 
 
 
 
 
 
 
 
Instituto Tecnológico Superior 
Progreso 
Dirección General 
Subdirección Académica 
 
 
 
Boulevard Tecnológico de Progreso S/N por 62, Progreso, Yucatán. C.P. 97320 
Tels. 969 934 3023, tecnm.mx | progreso.tecnm.mx 
 
 
 
Al salir del programa no va a mostrar las operaciones que hicimos o las instrucciones que 
hizo primero llama el Tokens OPERAR de ahí el abrir corchete después el abrir paréntesis 
después el numero y etc. Hasta llegar el resultado 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Instituto Tecnológico Superior 
Progreso 
Dirección General 
Subdirección Académica 
 
 
 
Boulevard Tecnológico de Progreso S/N por 62, Progreso, Yucatán. C.P. 97320 
Tels. 969 934 3023, tecnm.mx | progreso.tecnm.mx 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Instituto Tecnológico Superior 
Progreso 
Dirección General 
Subdirección Académica 
 
 
 
Boulevard Tecnológico de Progreso S/N por 62, Progreso, Yucatán. C.P. 97320 
Tels. 969 934 3023, tecnm.mx | progreso.tecnm.mx 
 
CONCLUSIÓN 
Los tokens son unidades mínimas de un lenguaje de programación que representan una 
parte de la gramatical específica, como palabras clave, operadores y símbolos. El análisis 
léxico es el proceso de identificar y clasificar los tokens en un programa, mientras que el 
análisis sintáctico implica la construcción de una estructura gramatical a partir de estos 
tokens, verificando que se cumpla con las reglas sintácticas del lenguaje de programación. 
El análisis léxico y sintáctico son esenciales en el proceso de compilación, ya que ayudan 
a detectar errores en el código y a generar un árbol sintáctico que permita la interpretación 
y ejecución del programa. Es importante tener un buen entendimiento de los conceptos de 
tokens, análisis léxico y análisis sintáctico para poder desarrollar programas de forma 
efectiva y evitar errores en el proceso de compilación.

Continuar navegando

Materiales relacionados

26 pag.
Manual de Usuario - Firebird y OrientDB

SIN SIGLA

User badge image

seeeeeeeeeeeeeeeeeeeeef

6 pag.
14 pag.
reporte

SIN SIGLA

User badge image

Miguel Mobal7

5 pag.
ADA 1 3 Presentación electrónica

SIN SIGLA

User badge image

seeeeeeeeeeeeeeeeeeeeef