Ejercicio Java : Analizador Léxico

Desarrollar una aplicación teniendo en cuenta las especificaciones léxicas del compilador MUSIM.

Con el objeto de clarificar algunos de los conceptos sobre diseño de compiladores, se desea construir un ANALIZADOR LÉXICO de un lenguaje muy simple (¡de alto nivel!), que se denominará MUSIM (MUy_SIMple).



Definición del lenguaje MUSIM


Se definirá el lenguaje indicando sus componentes léxicos, la gramática que describe su sintaxis, y las especificaciones semánticas.

Definición de los componentes léxicos


El lenguaje MUSIM tiene los siguientes tipos de componentes léxicos o tokens: - Identificadores, que sólo son nombres de variables y están compuestos por una única letra minúscula de rango a..z. - Constantes numéricas de un sólo dígito, de rango 0..9. - Operadores: +, -, *, / y %. - Símbolo de asignación: = (igual). - Paréntesis: ( y ). - Separador de sentencias: ; (punto y coma). - Indicadores de principio y fin de bloque: { y }. - Palabras reservadas, están formadas por una letra mayúscula. Tan sólo son tres: R (lectura), W (escritura) y M (programa principal). Puede observarse que en este lenguaje todos los tokens son de un sólo carácter.

Definición semántica


MUSIM sólo tiene un tipo de datos: los enteros. Todos los operadores se aplican sobre enteros y los resultados son de tipo entero. Así el operador división / representa la división entera. Para obtener una división exacta se obtiene el cociente con el operador / y el resto con el operador módulo %.

No hay comentarios