Plano de Estudos

Técnicas de Compilação TCom

Contextos

Groupo: 5_MEI 2025/26 > 2º Ciclo > Parte Escolar > 2033 - MEI - Grupo Opcional Geral (CEI)

Groupo: 5_MEI 2025/26 > 2º Ciclo > Parte Escolar > Agrupamento Curricular de Especialização > Engenharia de Software > 2020 - MEI - Engenharia de Software - Livres

Groupo: 5_MEI 2025/26 > 2º Ciclo > Parte Escolar > Agrupamento Curricular de Especialização > Ciência da Computação > 2016 - MEI - Ciência da Computação - Livres

ECTS

6.0 (para cálculo da média)

Objectivos

Este curso apresenta técnicas e ferramentas fundamentais para a construção de processadores de linguagem em geral, incluindo geradores de scanners / analisadores, verificação de restrições semânticas, otimização e geração de código. No final do curso, os alunos devem ser capazes de usar geradores de analisadores léxico e sintático, verificar restrições semânticas de linguagem, gerar código para máquinas virtuais e conhecer os fundamentos da otimização de código.

Programa

O processo de compilação; Análise léxica; Árvores sintáticas abstratas; Análise sintática; Tabelas de símbolos e processamento de declarações; Análise semântica; Representações intermédias; Síntese de código; Suporte à execução; Análise e otimização de programas.

Método de Avaliação

Trabalhos escritos; desenvolvimento de um compilador em várias fases; preparação de testes.

Carga Horária

Carga Horária de Contacto -

Trabalho Autónomo - 119.0

Carga Total -

Bibliografia

Principal

  • Modern Compiler Implementation in Java: Andrew W. Appel and Jens Palsberg 2002 Modern Compiler Implementation in Java. Andrew W. Appel and Jens Palsberg, 2nd edition. Cambridge University Press, 2002

Secundária

Disciplinas de Execução

2026/2027 - 2 Semestre

2025/2026 - 2 Semestre