Escolar Documentos
Profissional Documentos
Cultura Documentos
ITCDJ
El analizador lxico recoge informacin sobre los componentes lxicos en sus atributos asociados. Los tokens influyen en las decisiones del anlisis sintctico, y los atributos, en la traduccin de los tokens. En la prctica los componentes lxicos suelen tener solo un atributo. Para efectos de diagnostico, puede considerarse tanto el lexema para un identificador como el numero de lnea en el que se encontr por primera vez. Esta informacin puede ser almacenada en la tabla de smbolos para el identificador (estructura de datos).
LENGUAJES Y AUTOMATAS I
UNIDAD V
ITCDJ
Para la cadena E=M*C**2 de ejemplo, los componentes lxicos y los valores de atributo asociado son: <identificador, atributo para el smbolo E> <op_asignacion> <identificador, atributo para el smbolo M> <op_multiplica> <identificador, apuntador al smbolo C> <op_exponente> <nmero, atributo valor 2> Tome en cuenta que ciertas parejas no necesitan un valor de atributo. Los atributos relacionados con ese token debern ser conservados y transferidos a alguna estructura de datos para que sean empleados en las siguientes etapas del anlisis
LENGUAJES Y AUTOMATAS I
ITCDJ
Token: es la categora lxica asociada a un patrn. Cada token se convierte en un nmero o cdigo identificador nico. En algunos casos, cada nmero tiene asociada informacin adicional necesaria para las fases posteriores de la etapa de anlisis. El concepto de token coincide directamente con el concepto de terminal desde el punto de vista de la gramtica utilizada por el analizador sintctico.
Lexema: Es cada secuencia de caracteres concreta que encaja con un patrn. P.ej: 8", 23" y 50" son algunos lexemas que encajan con el patrn (0'|1'|2'| ... |9')+. El nmero de lexemas que puede encajar con un patrn puede ser finito o infinito, p.ej. en el patrn WHILE slo encaja el lexema WHILE.
Una vez detectado que un grupo de caracteres coincide con un patrn, se considera que se ha detectado un lexema. A continuacin se le asocia el nmero de su categora lxica, y dicho nmero o token se le pasa al sintctico junto con informacin adicional, si fuera necesario. Por ejemplo, si se necesita construir un analizador lxico que reconozca los nmeros enteros, los nmeros reales y los identificadores de usuario en minsculas, se puede proponer una estructura como:
LENGUAJES Y AUTOMATAS I