2. V E N T A N A
P R I N C I P A L
D E N U E S T R O
A N A L I Z A D O R
L É X I C O
En la parte izquierda
encontramos la caja de
texto donde ingresaremos
el código a analizar.
En la parte derecha se
muestran los botones:
Analizar: Ejecuta el
análisis léxico con el
código ingresado.
Limpiar: Limpia todos
los datos almacenados y
analizados que se
muestran en la tabla
(DataGriedView).
En la parte derecha
inferior estála tabla con
sus columnas respectivas,
donde seran mostrados los
componentes léxicos y el
tipo de componente o
token que son.
En pantalla se puede
apreciar la ventana principal
de nuestro programa, cada
uno con las respectivas
funcionalidades para cada
botón.
1.
2.
a.
b.
3.
5. Este código inicial es irelevante respecto al analizador léxico, sin embargo;
en la linea de comando 2 se hace uso del paquete de InteropServices; estas
lineas de comando son utilizadas unicamente para darle movilidad a la
ventana del programa, ya que se le modificó la propiedad del BorderStyle
que venia por defecto.
6. Se muestra en pantalla el código basico para realizar el análisis lexico, este código se encuentra dentro del metodo
"Analisis_Lexico"; para ello se hizo uso del switch, se recibe una entrada de tipo string que luego recorrerá todos los
casos expuestos que son todas las palabras reservadas y simbolos de nuestra propuesta de lenguaje. Posteriormente
se hacen excepciones tanto para las sentencias u oraciones y para los números; esto será explicado a detalle en la
siguiente diapositiva.
7. Como se menciono anteriormente este bloque de código es usado para las excepciones de Numero, Oracion e
Identificador que podemos encontrar al momento de realizar el análisis; para ello se hace uso del "default" en
donde se usan las 3 condicionales "if" para cada excepcion.
8. Por ultimo tenemos el metodo "Tokens", que nos permitira llenar el DataGriedView (tabla) con sus respectivas columnas y datos
que les correspondan; sin embargo el detalle mas importante en este bloque de codigo es el que se desarrolla en el "foreach"; ya
que es el que nos va a permitir separar nuestro codigo palabra por palabra mediante el metodo ofrecido por c# "Split"; al separar
el código almacenado en la caja de texto se continua con el análisis mediante el metodo ya expuesto anteriormente
"Analisis_Lexico"; para luego ser llenado segun corresponda dentro del DataGriedView. Y mostrar asi los resultados del analisis
lexico hecho por nuestro programa.