Red de conocimiento informático - Material del sitio web - Cómo utilizar JFlex, JavaCUP (plantilla de código detallada) por Tuxue Chitu

Cómo utilizar JFlex, JavaCUP (plantilla de código detallada) por Tuxue Chitu

El principio de compilación del experimento requiere que usemos JFlex y JavaCUP para analizar y procesar el lenguaje. JavaCUP tiene un manual de usuario para enseñarle cómo hacerlo. Sin embargo, cuando lo probé, lo hice. Descubrí que había muchos errores en ese ejemplo y los resultados cambiaron. Me tomó mucho tiempo completar la modificación. Por supuesto, inmediatamente decidí escribir un blog para contarles a todos. para operarlo correctamente, para no dar muchos desvíos en vano como yo. No sé si el que encontré es malo, si tienes un manual mejor por favor dímelo.

El propósito de este artículo es brindar el código completo del analizador de muestra de la calculadora usando JFlex y JavaCUP, para que los lectores puedan comprender completamente el uso de JavaCUP. Aunque este artículo solo muestra el código de la calculadora, puedes copiar directamente esta plantilla y cambiar las operaciones correspondientes siempre que sepas cómo escribir un modelo de traducción para tu propio idioma.

Referencia:

"Manual de usuario de CUP", autor:

Scott E. Hudson

La dirección es del JavaCUP del Sr. Li. -11a.rar\CUP-develop.tar.gz\develop\ manual.html descargado, que contiene instrucciones detalladas en inglés y códigos de muestra, pero también hay muchos errores. En este artículo, se llama simplemente Manual.

"Usa CUP para análisis sintáctico"

Pasos detallados: 1. Preparación.

JavaCUP es lo mismo que JFlex. Hay muchas carpetas y archivos en el paquete comprimido. No sé si el enfoque ortodoxo requiere usar javaCUP y configurar un montón de rutas, classpaths, jflex_home y otros. entornos como Jflex. variable, pero si es como yo y solo planea usarlo unas pocas veces, solo necesita realizar los siguientes dos pasos simples, que no requieren que configure ninguna variable de entorno (suponiendo que su directorio de trabajo sea trabajo). \):

1) Extraiga java-cup-11a.jar del paquete comprimido JavaCUP para trabajar/.

2) Extraiga CUP-develop.tar.gz\develop\src del paquete comprimido JavaCUP. Toda la carpeta java_cup para trabajar\.

Ahora puedes utilizar JavaCUP.

2. Escribe un analizador léxico para la calculadora. O use JFlex para generar un analizador léxico

Ambos métodos pueden generar un analizador léxico, donde el código para escribir directamente el analizador es el siguiente: