Saltar para:
Logótipo
Você está em: Início > EIC0028

Compiladores

Código: EIC0028     Sigla: COMP

Áreas Científicas
Classificação Área Científica
OFICIAL Programação

Ocorrência: 2007/2008 - 2S

Ativa? Sim
Página Web: http://www.fe.up.pt/~apm/comp
Unidade Responsável: Secção de Informática
Curso/CE Responsável: Mestrado Integrado em Engenharia Informática e Computação

Ciclos de Estudo/Cursos

Sigla Nº de Estudantes Plano de Estudos Anos Curriculares Créditos UCN Créditos ECTS Horas de Contacto Horas Totais
LEIC 0 Plano de estudos de transição para 2006/07 3 - 6 56 162
4
MIEIC 123 Plano de estudos oficial a partir de 2006/07 3 - 6 56 162

Língua de trabalho

Português

Objetivos

Fornecer os conceitos que permitam:
- compreender as fases de compilação de linguagens, em especial das linguagens imperativas e OO;
- especificar a sintaxe e semântica de uma linguagem de programação;
- compreender e utilizar as estruturas de dados e os algoritmos principais usados na implementação de compiladores.

Programa

- Introdução. Fases da compilação e estrutura típica de um compilador.
- Análise léxica. Expressões regulares e autómatos finitos.
- Análise sintática. Fundamentos teóricos. Gramáticas. Algoritmos para análise sintática. Tratamento de erros.
- Análise semântica. Verificação de tipos.
- Ambientes de execução. Organização de memória e mecanismos para a passagem de parâmetros.
- Técnicas de geração de código intermédio.
- Técnicas de geração de código final e de optimização.

Bibliografia Obrigatória

Louden, Kenneth C.; Compiler construction. ISBN: 0-534-93972-4
A. Aho, M. Lam, R. Sethi, J. Ullman; Compilers: Principles, Techniques, and Tools, 2nd Edition, Addison Wesley, 2007. ISBN: 0321486811 (Existe 1.a edição (1986) na biblioteca)

Bibliografia Complementar

Cooper, Keith D.; Engineering a compiler. ISBN: 1-55860-699-8
Crespo, Rui Gustavo; Processadores de linguagens. ISBN: 972-8469-01-2
Terence Parr; The Definitive ANTLR Reference - Building Domain Specific Languages, The Pragmatic Bookshelf, 2007. ISBN: 978-09787392-4-9

Métodos de ensino e atividades de aprendizagem

Aulas teóricas: exposição dos assuntos, acompanhada por exemplos e pela apresentação de pistas para resolução dos problemas das aulas práticas e do trabalho prático.
Aulas teórico-práticas: resolução de problemas e discussão de questões relacionadas com o trabalho prático.

Software

Microsoft Visual Studio 2005
ANTLR - Another Tool for Language Recognition
NetBeans 6

Palavras Chave

Ciências Tecnológicas > Tecnologia > Tecnologia de computadores > Tecnologia de software

Tipo de avaliação

Avaliação distribuída com exame final

Componentes de Avaliação

Descrição Tipo Tempo (Horas) Peso (%) Data Conclusão
Aulas da disciplina (estimativa) Participação presencial 48,00
Resolução de exercícios Teste 24,00 2008-05-31
Trabalho prático Trabalho escrito 55,00 2008-05-31
Exame final Exame 3,00 2008-06-27
Total: - 0,00

Componentes de Ocupação

Descrição Tipo Tempo (Horas) Data Conclusão
Acompanhamento/Preparação para o exame Estudo autónomo 30 2008-06-27
Total: 30,00

Obtenção de frequência

Realização do trabalho prático.

Fórmula de cálculo da classificação final

0.40*TP + 0.60*EX

Avaliação especial (TE, DA, ...)

A realização do trabalho prático é obrigatória.
O trabalho prático, devido à sua extensão, terá de ser realizado no decurso do semestre lectivo.

Melhoria de classificação

A classificação da componente distribuída não é susceptível de melhoria no ano lectivo em curso e conta para todas as épocas. A componente relativa ao exame final poderá ser melhorada, de acordo com as normas gerais de avaliação.

Observações

Trabalho prático:
Desenvolvimento das fases de análise léxica, análise sintática, análise semântica e geração de código intermédio de um compilador para uma linguagem imperativa simples.
Este trabalho deverá ser realizado em grupos de no máximo 2 alunos.
O exame final é uma prova com consulta.
Recomendar Página Voltar ao Topo
Copyright 1996-2025 © Faculdade de Engenharia da Universidade do Porto  I Termos e Condições  I Acessibilidade  I Índice A-Z  I Livro de Visitas
Página gerada em: 2025-07-31 às 06:01:34 | Política de Utilização Aceitável | Política de Proteção de Dados Pessoais | Denúncias