Saltar para:
Logótipo
Você está em: Início > CC3001
Mapa das Instalações
FC6 - Departamento de Ciência de Computadores FC5 - Edifício Central FC4 - Departamento de Biologia FC3 - Departamento de Física e Astronomia e Departamento GAOT FC2 - Departamento de Química e Bioquímica FC1 - Departamento de Matemática

Compiladores

Código: CC3001     Sigla: CC3001     Nível: 300

Áreas Científicas
Classificação Área Científica
OFICIAL Ciência de Computadores

Ocorrência: 2017/2018 - 1S

Ativa? Sim
Unidade Responsável: Departamento de Ciência de Computadores
Curso/CE Responsável: Licenciatura em Ciência de Computadores

Ciclos de Estudo/Cursos

Sigla Nº de Estudantes Plano de Estudos Anos Curriculares Créditos UCN Créditos ECTS Horas de Contacto Horas Totais
L:B 0 Plano de Estudos Oficial 3 - 6 56 162
L:CC 37 Plano de estudos a partir de 2014 3 - 6 56 162
L:F 0 Plano de Estudos Oficial 2 - 6 56 162
3
L:G 0 Plano estudos a partir do ano letivo 2017/18 3 - 6 56 162
L:M 0 Plano de Estudos Oficial 2 - 6 56 162
3
L:Q 1 Plano estudos a partir do ano letivo 2016/17 3 - 6 56 162
MI:ERS 63 Plano Oficial desde ano letivo 2014 3 - 6 56 162

Docência - Responsabilidades

Docente Responsabilidade
António Mário da Silva Marcos Florido Regente

Docência - Horas

Teórica: 2,00
Práticas Laboratoriais: 2,00
Tipo Docente Turmas Horas
Teórica Totais 1 2,00
António Mário da Silva Marcos Florido 2,00
Práticas Laboratoriais Totais 4 8,00
António Mário da Silva Marcos Florido 4,00
João Luis Alves Barbosa 4,00

Língua de trabalho

Português

Objetivos

Compreensão e implementação de um compilador e interpretador de uma linguagem de programação.

Resultados de aprendizagem e competências

Ser capaz de implementar um compilador para uma linguagem de programação simples.

Modo de trabalho

Presencial

Programa

Introdução ao processamento de linguagens de programaçao. Compiladores versus Interpretadores. Análise Léxica. Geradores automáticos de analisadores léxicos. Análise sintáctica (parsers LL, LR e LALR). Geradores de parsers. Sintaxe abstracta. Análise semântica: tabelas de símbolos, verificação de tipos. Registos de activação. Tradução para código intermédio. Geração de código: grafos de fluxo de dados, alocação de registos. 

Bibliografia Obrigatória

Appel Andrew W. 1960-; Modern compiler implementation in ML. ISBN: 978-0-521-60764-3 pbk
Louden Kenneth C.; Compiler construction. ISBN: 978-0-534-93972-4 hbk

Bibliografia Complementar

Aho Alfred V. 070; Principles of compiler design. ISBN: 0-201-00022-9 1 345$20

Métodos de ensino e atividades de aprendizagem

Aulas teóricas expositivas dos problemas e respectivas técnicas para os resolver. Construção de um compilador de uma linguagem imperativa para uma máquina virtual simples.

Tipo de avaliação

Avaliação distribuída com exame final

Componentes de Avaliação

Designação Peso (%)
Exame 70,00
Trabalho laboratorial 30,00
Total: 100,00

Componentes de Ocupação

Designação Tempo (Horas)
Elaboração de projeto 2,00
Estudo autónomo 2,00
Frequência das aulas 4,00
Total: 8,00

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

0.15*nota do trabalho1 + 0.15*nota do trabalho2 + 0.7*nota do exame. O exame tem nota mínima de 6 valores em 20.

Recomendar Página Voltar ao Topo
Copyright 1996-2022 © Faculdade de Ciências da Universidade do Porto  I Termos e Condições  I Acessibilidade  I Índice A-Z  I Livro de Visitas
Página gerada em: 2022-10-07 às 16:27:17 | Política de Utilização Aceitável | Política de Proteção de Dados Pessoais | Denúncias