Conhecimentos de Base Recomendados
Conceitos básicos de programação, algoritmos e estrutura de dados.
Métodos de Ensino
Nesta unidade curricular são utilizadas as seguintes metodologias de ensino:
1. Método expositivo: método explicativo onde fundamentos teóricos e conceitos são apresentados pelo docente e discutidos com a turma. Os conceitos e informações serão apresentados aos alunos através, por exemplo, de apresentações em slides ou discussões orais. Será utilizado nas aulas para a estruturação e esquematização da informação.
2. Método demonstrativo: baseia-se na exemplificação pelo docente de uma operação técnica ou prática que se deseja aprendida. Centra-se na forma como se executa uma dada operação, destacando as técnicas, as ferramentas e os equipamentos mais adequados. Será por exemplo utilizado em aulas práticas e laboratoriais.
3. Método interrogativo: processo que se fundamenta em interações verbais, sob a condução do docente, adotando o formato de questões e respostas. Permite obter maior dinâmica na aula e consolidar a aprendizagem. Será utilizado por exemplo para recordar elementos de aulas anteriores, e em revisões do conteúdo lecionado.
4. Métodos ativos: serão utilizadas técnicas pedagógicas em que o aluno é o centro do processo de aprendizagem, sendo um participante ativo e envolvido na sua própria formação. O docente assume o papel de facilitador, estimulando o pensamento crítico, a colaboração, a criatividade e a autonomia dos alunos. Serão aplicados nas aulas para alcançar um ambiente de aprendizagem dinâmico e mais duradouro.
Resultados de Aprendizagem
No final da unidade curricular o aluno deverá ficar habilitado a:
1. Identificar a evolução futura dos computadores com base no conhecimento da sua evolução até aos dias de hoje.
2. Identificar a arquitectura geral dos computadores.
3. Identificar diferentes técnicas de aumento da velocidade de processamento das aplicações, quer ao nível do hardware quer ao nível do software.
4. Usar microcontroladores para aquisição e controlo de sinais analógicos e digitais bem como efetuar a comunicação do microcontrolador com um computador.
Programa
1. Breve história dos computadores
2. Revisão de conceitos fundamentais para arquitectura de computadores
3. Arquitectura geral dos computadores
4. Arquitectura 80XXX.
5. Organização e funcionamento da memória
6. Introdução à programação em baixo nível
7. Introdução ao desenvolvimento de aplicações para microcontroladores
Docente(s) responsável(eis)
Gonçalo Miguel Santos MarquesMétodos de Avaliação
1 - Avaliação Periódica:
a) trabalhos práticos individuais ou em grupo (50%);
b) uma prova escrita individual (50%)
2 - Avaliação Exame:
a) trabalhos práticos individuais ou em grupo (50%);
b) uma prova escrita individual (50%)
Existe um valor mínimo de 40% para cada componente da avaliação periódica e Exame. Cada época de avaliação apresenta enunciados distintos.
Os trabalhos práticos são seguidos de uma apresentação oral ao docente da disciplina para validação e defesa individual e discussão das opções executadas.
Os trabalhos práticos serão avaliados com base na participação e proficiência de cada aluno nas actividades laboratoriais realizadas e no relatório elaborado.
Os trabalhos práticos devem ser realizados exclusivamente no período de lecionação. A não obtenção do aproveitamento mínimo de 40% nos trabalhos práticos em grupo implicará na não admissão do aluno à Avaliação por Exame, com a consequente reprovação à unidade curricular.
Estágio(s)
NAO
Bibliografia
Arroz, G., Monteiro, J. C., & Oliveira, A. (2007). Arquitectura de Computadores, dos Sistemas Digitais aos Microprocessadores. IST
Delgado , J., & Ribeiro, C. (2014). Arquitetura De Computadores. FCA.
Monk, S. (2019). Programming arduino next steps: Going further with sketches. McGraw-Hill Education.
Siek, J. (2023). Essentials of compilation: An incremental approach in python. The MIT Press.