Skip to content

Latest commit

 

History

History
55 lines (36 loc) · 2.04 KB

README.md

File metadata and controls

55 lines (36 loc) · 2.04 KB

Analizador Léxico

Creador

Macorreag Miller Alexander Correa Gonzalez

Categorias Léxicas

Este analizador lexico esta compuesto de las siguientes categorias lexicas las cuales constituyen un simbolo elemental de un lenguaje de programación:

  • Espacio
  • Numero
  • Predicado Aritmetico
  • Predicado Algebraico
  • Operador
  • Delimitador
  • Comentario
  • Fin de Sentencia
  • Desconocido

Expresiones Regulares

A continuación se especifican las expresiones regulares que determinan el patrón que caracteriza a cada una de esas categorías léxicas.

Categoría Expresión Regular
Espacio [ \t\n]+
Predicado Aritmetico [pqrt][0-9]{0,5}
Predicado Algebraico [xyz][0-9]{0,5}
Operador ["+"|"-"|"*"|"/"] || ["&&"|"||"->"] || [":"|":="|"<>"|"<"|">"]
Delimitador [ "("|")"|"["|"\]"|"{"|"}"]
Comentario ["#"][ \t\na-zA-Z0-9]*[\n]
Fin de Sentencia [;]
Desconocido .

Uso en LinuX

Para compilar los archivos Lex del Analizador Lexico main.l en las estaciones de trabajo Linux Lex ejecute las siguientes instrucciones desde la línea de comandos :

make

Internamente ejecutan las siguientes instrucciones:

flex main.l

Este comando usa las expresiones regulares y el código c en el archivo lex (main.l) para crear un archivo en C que contenga el código para el escáner. Este archivo c siempre se llama lex.yy.c.

cc lex.yy.c -lfl -o executable

Este comando compila el archivo C en un ejecutable con el nombre de executable.

./executable < test/code1 > out/code1.out

Use este comado para ejecutar el escáner, simplemente escriba el nombre del ejecutable en la línea de comandos y especifique un archivo de entrada utilizando el operador de redireccionamiento. En el ejemplo se direcciona al analizador el archivo code1 que se encuentra en la carpeta test y el resultado se redirecciona al archivo code1.out que se encuentra en la carpeta out.ut_.eta out.ut_.