Compiladores  
Apresentação Geral  
Edirlei Soares de Lima  
<edirlei.lima@universidadeeuropeia.pt>  
O que é um Compilador?  
•
É um programa que, a partir de um  
código fonte escrito em uma  
linguagem de programação, cria um  
programa semanticamente  
equivalente, porém escrito em  
linguagem de máquina.  
Compiladores  
•
Conteúdo Programático:  
1
. Introdução: linguagens de programação, compilação vs. interpretação,  
processo de compilação;  
2
3
4
5
6
7
. Sintaxe e Semântica: autômatos finitos, gramáticas e derivações, BNF;  
. Analise Léxica;  
. Analise Sintática;  
. Árvore Sintática e Árvore Sintática Abstrata;  
. Analise Semântica e Geração de Código Intermediário;  
. Geração de Código de Máquina;  
Método  
•
Aulas:  
–
–
–
Conceitos teóricos;  
Exemplos práticos;  
Exercícios de implementação;  
•
•
Projeto:  
–
Desenvolvimento de um compilador simples.  
Linguagem de Programação: C  
Avaliação  
•
•
Avaliação Continua (bipartida):  
–
[50%] Avaliação intercalar:  
•
[50%] Exercícios individuais;  
[50%] Entrega e discussão da versão preliminar do projeto.  
•
–
[50%] Avaliação individual presencial:  
•
[100%] Entrega e discussão da versão preliminar do projeto.  
Exame Final:  
–
[100%] Exame escrito.  
Bibliografia  
•
•
Aho, A. V., Lam, M. S., Jeffrey, R. S.  
Compiladores: Princípios, Técnicas e  
Ferramentas. 2ª edição, Pearson, 2007.  
ISBN: 978-8588639249.  
Sebesta, R. W. Conceitos de Linguagens de  
Programação. 9ª edição Editora Bookman,  
2
011. ISBN: 978-8577807918.  
Compiladores  
•
•
Blackboard: Compiladores  
Course webpage:  
–
http://www.inf.puc-rio.br/~elima/comp/  
•
Contact:  
–
–
edirlei.slima@gmail.com