Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Materia: Compiladores
1) Se compila el archivo yacc
6) Luego se escribe línea por línea el código para que valide correctamente y al final
se verá que el proceso se dio con éxito.
Análisis Lexicográfico Estudiante: Kelly Villacres Curso: 7-5
Materia: Compiladores
7) Si no se quiere escribir línea por línea, pegar el código en un bloc de notas y
guardarlo
8) Y por último en el cmd ejecutamos este archivo junto con el analizador léxico para
que detecte si hay errores
CODIGO
9) Archivo Yacc
%{
#include<stdio.h>
%}
%token P_RESERVADA
%token OPERADOR
%token A_LLAVE
%token C_LLAVE
%token A_PARENTESIS
%token C_PARENTESIS
%token A_CORCHETE
%token C_CORCHETE
%token FIN_SENTENCIA
%token TIPO_DATO
%token SIMBOLOS
%token P_FOR
%token P_DEFINE
%token P_RETURN
%token LETRA
%token P_INCREMENTO
%token P_DECREMENTO
Análisis Lexicográfico Estudiante: Kelly Villacres Curso: 7-5
Materia: Compiladores
%token NUMERO
%token S_COMA
%token S_MENOR
%token S_MAYOR
%token S_IGUAL
%token S_NUMERAL
%token LIBRERIAS
%start INICIO
%%
INICIO: INCLUDES FUNCION_PRINCIPAL;
INCLUDES: INCLUDE | INCLUDE INCLUDES
INCLUDE: S_NUMERAL P_RESERVADA S_MENOR LIBRERIAS S_MAYOR|S_NUMERAL P_DEFINE LETRA NUMERO;
FUNCION_PRINCIPAL: TIPO_DATO P_RESERVADA A_PARENTESIS C_PARENTESIS A_LLAVE EXPRESIONES C_LLAVE;
EXPRESIONES: DECLARACIONES_VARIABLES BUCLE_FOR P_RETURN NUMERO FIN_SENTENCIA;
DECLARACIONES_VARIABLES: VARIABLE | VARIABLE DECLARACIONES_VARIABLES;
VARIABLE: TIPO_DATO LETRA A_CORCHETE NUMERO C_CORCHETE S_COMA LETRA A_CORCHETE LETRA C_CORCHETE
FIN_SENTENCIA
| TIPO_DATO LETRA S_COMA LETRA S_COMA LETRA S_IGUAL NUMERO FIN_SENTENCIA;
BUCLE_FOR: P_FOR A_PARENTESIS LETRA S_IGUAL NUMERO FIN_SENTENCIA LETRA S_MENOR NUMERO FIN_SENTENCIA
LETRA P_INCREMENTO C_PARENTESIS A_LLAVE
LETRA S_IGUAL LETRA OPERADOR NUMERO FIN_SENTENCIA
Análisis Lexicográfico Estudiante: Kelly Villacres Curso: 7-5
Materia: Compiladores