Analizador Léxico

Páginas: 13 (3014 palabras) Publicado: 18 de agosto de 2013

UNIVERSIDAD VERACRUZANA

FACULTAD DE ESTADÍSTICA E INFORMÁTICA




Reporte de la Primera
Parte del Proyecto: Analizador Léxico


EXPERIENCIA EDUCATIVA
Compiladores
CATEDRÁTICO
Dr. Nicandro Cruz Ramírez
ALUMNO
Williams Zavaleta Vázquez
FECHA
16 de Abril del 2012

INDICE




1. INTRODUCCIÓN…………………………………………………………….….………..2
2. PLANTEAMIENTO DELPROBLEMA…………………………………….….……......3
3. SOLUCIÓN……………………………………………………………………….……….5
3.1.1 ANÁLISIS……………………………………………………………………….5
3.1.2 DISEÑO…………………………………………………………………………7
3.1.2.1 EXPRESIONES REGULARES Y NFA’S……………………………...…7
3.1.2.2 DFA’S…………………………………………………………………......12
3.1.2.3 PSEUDOCÓDIGO DEL DFA………………………………………...…19
4. PRUEBAS Y DISCUSIÓN…………………………………………………………….20
5. CONCLUSIONES………………………………………………………………………26
6.REFERENCIAS………………………………….………………………………...……27














1. INTRODUCCIÓN

El presente documento tiene como objetivo presentar el reporte de la primera parte del proyecto para la experiencia educativa Compiladores. Este proyecto consiste en la realización de un Analizador Léxico, el cual constituye la primera fase en la construcción de un compilador.

La construcción de un compilador consta de diversas fases. En el análisis léxico, lo que se busca es ladescomposición de un programa fuente, escrito en algún lenguaje de programación determinado, en componentes léxicos (tokens), los cuales son secuencias de caracteres que tienen un significado. Estos tokens son utilizados por el Analizador Sintáctico, el cual es la segunda fase del compilador, para la construcción de árboles sintácticos.

Para la construcción del analizador léxico, se hace uso de unaserie de pasos equivalentes a esta secuencia:

Expresión regular NFA DFA Programa

Esta secuencia ha sido implementada en este proyecto, y a lo largo de este documento se podrán observar los pasos seguidos para la construcción del analizador léxico.

El contenido de este documento se describe brevemente a continuación. En primera instancia se encuentra el planteamiento del problema, enel cual se hace una descripción del problema a resolver. Seguido de esto se hace un análisis y diseño del problema, en donde se identificarán las soluciones al problema y los métodos para solucionarlo. Finalmente, en las pruebas y discusión, se presentan los resultados de la implementación, así como el análisis de los mismos.


2. PLANTEAMIENTO DEL PROBLEMA

Se pretende realizar un AnalizadorLéxico para determinar las clasificaciones de los tokens de un pequeño subconjunto del lenguaje de programación ADA.

comienza
termina
;
:=
+
-
*
/
(
)
mod
rem
identificadores
enteros

Las clasificaciones de los tokens seguirán las siguientes especificaciones:

1. Un identificador se ha definido como una letra seguida por un número arbitrario de letras o dígitos2. Las palabras comienza y termina son palabras reservadas.

3. Los símbolo punto y coma (;), paréntesis abierto y paréntesis cerrado son símbolos permitidos.

4. Un entero ha sido definido como un dígito seguido por una secuencia de dígitos

5. Los símbolos + y - han sido denominados como OpSuma

6. Los símbolos *, / y las palabras mod y rem serán identificados comoOpMultiplicacion.

7. El símbolo := se definió como Asignación.

Para la etapa de pruebas se deberá ejecutar el analizador léxico en el programa siguiente:


comienza
a:=b3;
xyz := a + b + c
-p / q;
a := xyz * (p + q);
p:= a - xyz - p;
termina;

La salida que generará el analizador léxico, debe contener el lexema de entrada y al tipo que pertenece, tal como se muestra en la siguientetabla:


Tipo
Lexema
PalReservada
comienza
Identificador
a
Asignación
:=
Identificador
xyz
















3. SOLUCIÓN

Esta parte del documento consta de 2 puntos. En el punto 3.1.1 se hace un análisis del problema a resolver, para así poder identificar una posible solución al...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Analizador Lexico
  • Analizador Lexico
  • Analizador Lexico
  • Analizadores lexicos
  • Analizador Lexico
  • analizador lexico
  • Analizador Lexico
  • Analizador lexico

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS