Buscar

Aula 03 - COMPILADORES - Estácio

Prévia do material em texto

COMPILADORES
AULA 03
COMPILADORES
Aula 03
COMPILADORES
AULA 03
Apresentação da Disciplina
Professor: Marcus Pantoja da Silva
E-mail: marcus.pantoja@estacio.br
mailto:marcus.pantoja@estacio.br
COMPILADORES
AULA 03
Implementação de um Analisador Léxico
• Para implementação de um analisador léxico temos
algumas opções
• Associar tratamento de erros individuais a cada estado do
autômato, de forma que haja uma relação única entre o
estado e o erro possível
• Vantagem: autômato mais compacto
COMPILADORES
AULA 03
Implementação de um Analisador Léxico
• Exemplo de implementação de um autômato finito que
reconhece b*ab com tratamento de erros de estado.
COMPILADORES
AULA 03
Implementação de um Analisador Léxico
COMPILADORES
AULA 03
Implementação de um Analisador Léxico
COMPILADORES
AULA 03
Implementação de um Analisador Léxico
Implemente o autômato do slide anterior a partir de uma função 
de transição de seus estados, ou seja, sabendo o seu estado atual e 
entrada (caractere) para qual estado o autômato irá. Verifique que 
caso a cadeia de entrada termine e você está em um estado final, 
então a cadeia é reconhecida, desse modo você deve retornar o 
lexema e o token associado. 
Crie estados de erros e relate caso a cadeia de entrada leve a eles.
Atividade individual a ser entregue via SAI até 22/02 com valor de 
1,0 ponto.
COMPILADORES
AULA 03
Bibliografia Básica 
AHO, Alfred V.; SETHI, Ravi; ULLMAN, Jeffrey D. Compiladores: princípios, 
técnicas e ferramentas. Rio de Janeiro: LTC, 2008. MENEZES, Paulo Fernando 
Blauth. 
Linguagens Formais e Autômatos. 4. ed. Porto Alegre: Bookman, 2002. PRICE, Ana 
Maria; TOSCANI, Simão Sirineo. Implementação de Linguagens de Programação: 
Compiladores. 2. ed. Porto Alegre: Sagra-Luzzato - Instituto de Informática da 
UFRGS, 2001.
COMPILADORES
AULA 03
Bibliografia Complementar 
LEWIS, Harry; PAPADIMITRIOU, Christos. Elementos de Teoria da Computação. 2 
ed. Porto Alegre: Bookman, 2004;
DIVERIO,Tiaraju Asmuz; MENEZES,Paulo Blauth. Teoria da Computação: Máquinas 
Universais e Computabilidade . 3ª Ed. Vol. 5. Rio de Janeiro: Bookman, 2011. 
GRUNE, Dick. Projeto moderno de compiladores: implementação e aplicações. Rio 
de Janeiro: Campus, 2001. 
JOSÉ NETO, João. Introdução à compilação. Rio de Janeiro: LTC, 1987. DELAMARO, 
Márcio E. Como construir um compilador utilizando ferramentas Java. São Paulo: 
Novatec, 2004 
Aho, A., Lam, M., Sethi, R., and Ullman, J. (2007). CompiladoresPrincpios Técnicas 
e Ferramentas. Pearson, 2a. edition
COMPILADORES
AULA 03
AVANCE PARA FINALIZAR 
A APRESENTAÇÃO.

Continue navegando