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

Microprocessadores e Computadores Pessoais

Código: EIC0016     Sigla: MPCP

Áreas Científicas
Classificação Área Científica
OFICIAL Arquitectura de Computadores

Ocorrência: 2016/2017 - 2S Ícone do Moodle

Ativa? Sim
Unidade Responsável: Departamento de Engenharia Eletrotécnica e de Computadores
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
MIEIC 196 Plano de estudos a partir de 2009/10 1 - 6 56 162

Língua de trabalho

Português

Objetivos

ENQUADRAMENTO

Os computadores pessoais (PC), tanto computadores de mesa como portáteis, constituem uma ferramenta ubíqua nas sociedades modernas. A sua arquitetura reflete o avanço tecnológico atual, mas também estabelece os limites das suas capacidades e desempenho . O conjunto de instruções IA-32 está no centro de todos os computadores pessoais atualmente em uso. Tanto a arquitetura como o conjunto de instruções têm um impacto profundo na prática diária dos engenheiros informáticos.

OBJETIVOS ESPECÍFICOS

A unidade curricular de Microprocessadores e Computadores Pessoais tem por objectivo desenvolver, combinar e aplicar de forma integrada conceitos das áreas de Arquitectura de Computadores e de Linguagens de Programação. Por um lado, a unidade curricular explora as relações entre o conjunto de instruções do CPU e a programação de baixo nível (linguagem "assembly"). Por outro lado, reconhecendo que a arquitectura de computadores pessoais modernos vai muito para além da arquitectura do CPU, a unidade curricular abordará a arquitectura geral de um PC, incluindo o subsistema de armazenamento de dados e outros periféricos. Após a conclusão com sucesso desta unidade curricular, o estudante terá adquirido a capacidade de identificar e descrever a arquitectura dos computadores pessoais em uso actualmente, bem como a capacidade de aplicar as técnicas de programação "assembly" na implementação de qualquer tipo de algoritmo. 

DISTRIBUIÇÃO PERCENTUAL

  • Componente científica: 60%
  • Componente tecnológica: 40%

Resultados de aprendizagem e competências

Após completar esta unidade curricular, os estudantes serão capazes de:

  • Identificar e descrever os principais subsistemas de um computador pessoal;
  • Explicar e avaliar a contribuição de cada subsistema para o desempenho global;
  • Usar ferramentas de compilação e depuração (MASM, depurador);
  • Descrever a arquitectura do conjunto de instruções IA-32;
  • Desenvolver programas curtos em linguagem "assembly" IA-32;
  • Explicar o funcionamento de programas em "assembly" IA-32;
  • Explicar os mecanismos de invocação de subrotinas;
  • Utilizar subrotinas para implementar programas modulares;
  • Usar instruções de vírgula flutuante;
  • Estabelecer a correspondência entre código C e código "assembly"
  • Descrever e avaliar o desempenho de sistemas de aramazenamento de dados (discos magnéticos);
  • Descrever, selecionar e avaliar o desempenho de diferentes métodos de comunicação com periféricos ("polling", interrupções, DMA)
  • Explicar os princípios de funcionamento de barramentos de comunicação com periféricos.

Modo de trabalho

Presencial

Pré-requisitos (conhecimentos prévios) e co-requisitos (conhecimentos simultâneos)

Pré-requisitos:

EIC0083: princípios da programação em linguagem "assembly" e de organização de computadores.

Co-requisitos:

EIC0012: princípios básicos de programação em linguagem C/C++.

Programa


  1. Introdução ao microprocessador e microcomputador. Arquitectura do microprocessador IA-32. Modos de endereçamento. Funcionalidade e organização de um "Assembler".

  2. Instruções de transferência de dados, aritméticas e lógicas. Instruções de controlo de fluxo: saltos incondicionais e condicionais.

  3. Subrotinas (invocação, passagem de parâmetros). Programação modular.

  4. Operações em vírgula flutuante.

  5. Interface com periféricos: "polling", interrupções, DMA. Barramentos de comunicação com periféricos.

  6. Subsistema de armazenamento de dados.

Bibliografia Obrigatória

Kip R. Irvine; Assembly language for intel-based computers. ISBN: 0-13-049146-2

Bibliografia Complementar

David A. Patterson, John L. Hennessy; Computer organization and design. ISBN: 978-0-12-374493-7

Métodos de ensino e atividades de aprendizagem

Aulas Teóricas: Exposição oral dos diversos temas da disciplina que serão acompanhados, sempre que se considere oportuno, com apresentação de exemplos e a respectiva discussão.

Aulas Práticas: A metodologia das aulas práticas baseia-se na apresentação, discussão e resolução de problemas que serão testados em computador.

Software

MASM
Ollydbg
Visual Studio

Palavras Chave

Ciências Tecnológicas > Engenharia > Engenharia de computadores

Tipo de avaliação

Avaliação distribuída com exame final

Componentes de Avaliação

Designação Peso (%)
Exame 50,00
Teste 50,00
Total: 100,00

Componentes de Ocupação

Designação Tempo (Horas)
Estudo autónomo 106,00
Frequência das aulas 56,00
Total: 162,00

Obtenção de frequência

O estudante não pode exceder o número limite de faltas correspondente a 25% das aulas práticas previstas.

Apenas estão isentos de obter frequência os estudantes que a tenham obtido no ano letivo 2015/16.

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

A avaliação tem as seguintes componentes:

  • Dois testes (M1 e M2)
  • Exame final

Componentes em falta valem 0.

Os testes constituem a avaliação distribuída.

Os testes têm duas partes: 1)  escolha múltipla, com duração de 45 minutos (sem consulta); 2) exercício de programação escrito com duração de 30 minutos.

A nota da avaliação distribuída é calculada por:

Nota avaliação distribuída = (M1 + M2)/2

Para estudantes que tenham obtido frequência em 2015/16, pode ser considerada a nota de avaliação distribuída obtida nesse ano.

A classificação final é calculada por

Nota Final = máximo(0,5 x Exame + 0,5 x Avaliação distribuída; Exame)

A aprovação à unidade curricular exige cumulativamente:

  • Nota de avaliação distribuída igual ou superior a 5,0 valores (em 20) em alguma ocorrência da UC;
  • Nota de exame superior a 5,0 valores (em 20);
  • Nota final (arredondada às unidades) igual ou superior a 10 valores.

A prova de exame tem a duração de 2H00 (sem consulta).

Melhoria de classificação

A classificação global pode ser melhorada através da realização de uma prova escrita de dificuldade semelhante à do exame.

Observações

O desenvolvimento de aplicações em Microcomputadores exige conhecimentos relacionados com Arquitectura de Computadores, constituição de Microcomputadores baseados em Microprocessadores, Programação em Linguagens de baixo nível (Assembly) e ligação a dispositivos físicos exteriores . Esta unidade curricular, surgindo no plano de estudos na sequência da disciplina de Arquitectura e Organização de Computadores, tem por objectivo desenvolver e aplicar estes conceitos no contexto da família de processadores Intel IA-32.

Recomendar Página Voltar ao Topo
Copyright 1996-2024 © 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: 2024-09-19 às 04:16:21 | Política de Utilização Aceitável | Política de Proteção de Dados Pessoais | Denúncias