Codigo Lex Y Flex

Páginas: 8 (1778 palabras) Publicado: 10 de diciembre de 2012
Generadores de código LEX y FLEX




La generación de código data desde la existencia de los primeros compiladores. Hasta la aparición de los primeros generadores de código comercial u orientado a "usuarios finales"; la generación de código era ex-clusividad de programas compiladores especializados.




En tiempos más recientes la generación de código, gracias al avance de la ingenieríadel software, se ha llevado a un nivel diferente; donde se encuentran programas generadores de pantallas, reportes y consultas, estas son herramientas de gran utilidad; pero se debe, en la mayoría de los casos, Pagar una gran cantidad de dinero por ellos.




                          [pic]


Un compilador, básicamente, es un programa que lee un archivo con código fuente; este códigofuente lo traduce a un lenguaje llamado lenguaje objeto. En este proceso se le indica al usuario la existencia de errores de codificación.
Entonces el compilador recibe una entrada de caracteres, por lo general escrita por el programador; el compilador realiza los análisis: léxico, sintáctico y semántico, para generar seguidamente el código intermedio, el código intermedio se genera con principios debúsqueda de patrones y aplicación de reglas. Después se hace la optimización del código intermedio; seguidamente se realiza la generación de código objeto en lenguaje de máquina.















La ingeniería del software evoluciona cada día; esta evolución conlleva a la creación de métodos mucho más cómodos, precisos, confiables y rápidos para la creación de software.


Para lacreación de generadores de código se deben considerar los siguientes aspectos:


La arquitectura de software para la cual se va ha desarrollar el generador Las características especificas del lenguaje de programación para el cual se hará el generador. El lenguaje con el que se desarrollará el propio generador Responder los interrogantes: ¿La generación de código se realizará a partir demodelos como Uml1? ¿La generación de código se hará a partir de las tablas de una base de datos ?,¿Se realizará un generador de código que su resultado sea fragmentos de código que son de uso más frecuente en el software? ¿Se creará un generador genérico que "genere" código para diferentes lenguajes. Las reglas de utilización del generador, en otras palabras, la forma adecuada para que los usuarios delgenerador obtengan el mayor provecho. 

En síntesis para crear un generador de código se deben hacer muchas de las tareas que realizan los compiladores; algunas de estas tareas son: la búsqueda de patrones, la escritura de código, el análisis sintáctico, el análisis léxico y la optimización de código. Estas tareas las realiza el desarrollador una vez para una arquitectura específica.


LEXLex es un programa para generar analizadores léxicos (en inglés scanners o lexers ). LEX, escrito originalmente por Eric Schmidt y Mike Lesk, es el analizador léxico estándar en los sistemas Unix, y se incluye en el estándar de POSIX. LEX toma como entrada una especificación de analizador léxico y devuelve como salida el código fuente implementando el analizador léxico en C.

El lex es ungenerador de programas diseñado para el proceso léxico de cadenas de caracteres de input. El programa acepta una especificación, orientada a resolver un problema de alto nivel para comparar literales de caracteres, y produce un programa C que reconoce expresiones regulares. Estas expresiones las especifica el usuario en las especificaciones fuente que se le dan al lex. El código lex reconoce estasexpresiones en una cadena de input y divide este input en cadenas de caracteres que coinciden con las expresiones. En los bordes entre los literales, se ejecutan las secciones de programas proporcionados por el usuario. El fichero fuente lex asocia las expresiones regulares y los fragmentos de programas. Puesto que cada expresión aparece en el input del programa escrito por el lex, se ejecuta el...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Generadores de codigo lex y flex
  • Lex y flex
  • Lex y flex
  • Generador en código lex
  • flexo
  • lexo
  • Flex
  • Flexo

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS