Compiladores Análisis Léxico Oscar Bonilla Universidad Galileo.

Slides:



Advertisements
Presentaciones similares
PROGRAMACIÓN EN C.
Advertisements

El lenguaje de programación C - El primer programa -
Análisis Sintáctico Capítulo 4.
Análisis Sintáctico Descendente
Compiladores e intérpretes Análisis Sintáctico II
Programación de Computadores
Programación de Computadores
Análisis Lexicográfico
SENTENCIAS SECUENCIALES
Instrucciones Básicas Entrada de Información
Funciones y recursividad
MANUAL EXPRESS DE C J.M.sevilla.
RESUMEN DE LAS UNIDADES I-II-III Libro: Programacion. en. C
LOGROS DEL PERÍODO Utiliza de forma correcta las funciones para entrada y salida de datos en c++. Utiliza los elementos básicos de un programa en c++.
Fundamentos de la Programación Estructurada
Programacion de Computadora Prof. Obadiah Oghoerore.
Programación, Algoritmos y Estructuras de Datos
Funciones. Programación, Algoritmos y Estructuras de Datos.
Unidad 2. Análisis léxico
Teoría de lenguajes y compiladores
Procesadores de Lenguajes I
INFORMATICA I Funciones CLASE 13.
Programación 1 Presentación de c++
ESTRUCTURA DEL LENGUAJE C
Análisis Semántico y Chequeo de Tipos
Funciones y procedimientos
CI TEORIA semana 8 Subprogramas o funciones Definición de funciones.
TRAMPAS EN EL DISEÑO DE LENGUAJES CON RELACIÓN A LOS NOMBRES - REGLAS DE ALCANCE - COMPILACIÓN POR SEPARADO CONTROL DE FLUJO - EVALUACIÓN DE EXPRESIONES.
Asignatura: Computadores
Unidad I Java y C++ : Similitudes y diferencias
Programa “Coordenadas” Ing. Arturo Díaz Vargas Departamento de Sistemas División de Ciencias Básicas e Ingeniería UNIVERSIDAD AUTONOMA METROPOLITANA.
Programación de sistemas
Archivos Programación.
Paradigmas de Programación
Asignatura: Lenguaje de Programación de Sistemas PPT No.05 Programa vespertino de Ingeniería (E) en Sistemas Computacionales Profesor: José Estay Araya.
Lenguaje C.
Dim VARIABLE As TIPODATO Dim int As Integer = 0 VARIABLE= InputBox(“Digite el Documento a buscar") While Not NOMBRETABLA.EOF And int = 0 If NOMBRETABLA.Fields(0).Value.
Semana 5 Subprogramas..
Características de “C”
Características de “C” Y Esta conformado por un Ambiente Integrado. Y Es un Lenguaje de Nivel medio. Y Es un compilador. YContiene un conjunto de palabras.
FUNCIONES EN C.
Procesadores del Lenguaje
Estructura de un programa en C
CI TEORIA semana 4 Estructura Algorítmica: SELECCIÓN
Archivos.
Programación I Teoría VIII: Entrada/Salida
Lenguaje C Ing. Sonia Alexandra Pinzón Nuñez
Aplicado a programas openMP
Ejemplos openMP.
Programación de Memoria Compartida
Compiladores Introducción Oscar Bonilla Universidad Galileo.
Manejo de archivos de datos en C
Universidad Nacional de Jujuy Facultad de Ingeniería
INTRODUCCION. LOS LENGUAJES DE PROGRAMACIÓN Los lenguajes de programación herramientas que nos permiten crear programas y software. EL LENGUAJE DE MAQUINA.
Introducción al Análisis Sintáctico
Lectura 4: Compilación e Interpretación
Introducción a los punteros Prof. Domingo Hernández.
Introducción a la Programación “El lenguaje C” Manuel Crisosto M., Claudio Gutiérrez S., Christian Vidal C.
Lenguaje de Programación  Un lenguaje se puede definir como un conjunto de palabras y formas de expresión por medio de las cuales se comunican y relacionan.
LENGUAJE “C” Programación. Condicionales Los condicionales permiten al programa escoger entre varios posibles resultados dependiendo de la evaluación.
Compiladores e intérpretes
Departamento de Informática Universidad Técnica Federico Santa María Temas 2,3,4: Estructura de un Programa Pascal Declaraciones Tipos de Datos Simples.
Compiladores Análisis Léxico Oscar Bonilla Universidad Galileo.
UNIVERSIDAD LATINA (UNILA)
Compiladores Análisis Léxico Oscar Bonilla Universidad Galileo.
LENGUAJE “C” Programación.
IV. GRAMÁTICAS DISTRIBUIDAS Y TABLAS DE SÍMBOLOS
TIPOS DE DATOS Estructuras de control y repetición PARCIAL III.
Características de “C” Esta conformado por un Ambiente Integrado. Es un Lenguaje de Nivel medio.Es un compilador. Contiene un conjunto de palabras reservadas.
Introducción al Lenguaje C (II) Cadenas de caracteres, archivos de cabecera, lectura y escritura Fundamentos de Programación Departamento de Lenguajes.
Transcripción de la presentación:

Compiladores Análisis Léxico Oscar Bonilla Universidad Galileo

Flex Generador de Analizadores Léxicos diseñado por Vern Paxson Definiciones % Reglas % Código de usuario Formato del archivo de entrada Definiciones: %{ literal %}

Ejemplo /* un scanner para un lenguaje similar a Pascal */ %{ #include %} DIGIT[0-9] ID [a-z][a-z0-9]* :

Ejemplo % {DIGIT}++{ printf( "An integer: %s (%d)\n", yytext, atoi(yytext)); } {DIGIT}+"."{DIGIT}*{ printf("A float: %s (%g)\n", yytext, atof(yytext)); } if|then|begin|end|procedure|function{ printf("A keyword: %s\n", yytext ); } {ID}printf ("An identifier: %s\n", yytext); "+"|"-"|"*"|"/"printf("An operator: %s\n", yytext); "{"[^}\n]*"}" /* eliminar comentarios */ [ \t\n]+/* eliminar blancos */.printf ("Invalid token: %s\n", yytext);

Ejemplo % main(int argc, char** argv) { ++argv, --argc; if (argc > 0) yyin = fopen(argv[0], "r"); else yyin = stdin(); yylex(); }

¿Cómo lo corremos? ● Lo guardamos en un archivo (pascal.lex) $ flex pascal.lex $ cc -o pascal lex.yy.c $./pascal prueba.pas.....