·

Ciência da Computação ·

Compiladores

Send your question to AI and receive an answer instantly

Ask Question

Recommended for you

Preview text

Um compilador ou um interpretador usando o ANTLR linguagem JAVA ou C Código fonte comentado para eu entender o que foi feito Projeto compactado Funcionalidades Comandos de entrada e saída Saída writeln write Entrada readln Declaração de Variáveis Tipos integer float boolean string vetores tipos de dados personalizados e referências Operações Matemáticas Soma Subtração Multiplicação Divisão e Resto Precedência Controle de Fluxo Tipos if if else Laços de Repetição Tipos for while repeat until Funções com retorno e sem retorno Análise semântica Verificação de Tipos Verificação de Declaração Uso de bibliotecas externas Simplesmente importar código de outro arquivo Já possuo uma grande parte da gramatica implementada segue o código grammar MeuCompilador prog includes globals functions main includes INCLUDE STR globals GLOB OP vars CL vars type ID SEP ID EOL functions function function type ID OPP type ID SEP type ID CLP block main MAIN block block OP line CL line vars varDeclart attribution EOL attrLine input EOL inputLine output EOL outputLine expr EOL exprLine ifstmt ifLine whilestmt whileLine forstmt forLine retrn EOL returnLine callfunction EOL funcLine attribution ID AT expr attrExpr ID AT STR attrStr input READ OPP ID CLP output WRITE OPP outputType CLP outputType STR printSTR ID printID expr printExpr ifstmt IF OPP boolExpr CLP block iffStmt IF OPP boolExpr CLP block ELSE block ifStmtElse whilestmt WHILE OPP boolExpr CLP block whileeStmt forstmt FOR OPP attribution EOL boolExpr EOL ID incr NUM CLP block forrStmt callfunction ID CALL ID OPP ID SEP ID CLP ID CALL ID OPP NUM SEP NUM CLP ID OPP CLP retrn RET 0 returnVal type INT FLOAT BOOLEAN STRING assignOP EQ NEG LESS LESSEQ GREATER GREATEREQ expr term PLUS expr exprPlus term MINUM expr exprMinum term exprTerm term term MULT factor termMult term DIV factor termDiv term MOD factor termMod factor termFactor factor OPP expr CLP exprParnt ID factorId NUM factorNum STR factorStr boolExpr TRUE trueValue FALSE falseValue factor assignOP factor boolExpres incr PEG MEG INCLUDE Include GLOB global MAIN main FUNCTION function WS skip NL r skip LC skip IF if ELSE else FOR for WHILE while WRITE writeln READ readln RET return OP CL SEP OPP CLP EOL AT RNG NEG EQ PEG MEG LESS LESSEQ GREATER GREATEREQ CALL TRUE true FALSE false PLUS MINUM MULT DIV MOD INT int FLOAT float BOOLEAN bool STRING string ID azAZ09azAZ NUM 0909 STR azAZ09 azAZ09