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

Laboratório de Computadores

Código: EIC0020     Sigla: LCOM

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

Ocorrência: 2010/2011 - 1S

Ativa? Sim
Página Web: http://web.fe.up.pt/~pfs/aulas/lcom2010/
Página e-learning: http://moodle.fe.up.pt/
Unidade Responsável: Departamento de Engenharia 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
MIEIC 119 Plano de estudos a partir de 2009/10 2 - 6 70 162

Língua de trabalho

Português - Suitable for English-speaking students

Objetivos

Os objectivos da unidade curricular são dotar os estudantes com conhecimentos essenciais para serem capazes de:
- utilizar a interface de "hardware" dos periféricos mais habituais de um PC;
- desenvolver "software" de baixo nível e de "software" embebido para a plataforma PC;
- usarem a linguagem de programação C de modo estruturado;
- utilizarem várias ferramentas de desenvolvimento de software.

Todos os estudantes que terminarem a unidade curricular com sucesso serão capazes de compreender os principais modelos de acesso a dispositivos periféricos e aplicá-los em programas de alto nível, relativamente complexos.

Programa

Periféricos de entrada/saída e seus modos de funcionamento.
Mapeamento directo no espaço de endereçamento de memória.
Acesso a periféricos no modo "polled" e por interrupção.
Interrupções nos processadores IA-32, o controlador de interrupções do PC, escrita de rotinas de interrupção em Assembly e em C.
Periféricos típicos de um PC, como o teclado, o rato, a placa gráfica, o relógio de tempo real, o temporizador, o altifalante, o porto série.

Programação na linguagem C: principais diferenças em relação à linguagem C++, métodos para estruturação do código.
Organização da memória em execução. Funções: mecanismo de chamada, passagem de parâmetros, armazenamento local e retorno de valores.
Programação combinada em C e "assembly" dos processadores IA-32.
Criação e utilização de bibliotecas. Ligação estática de código objecto.

Utilização de ferramentas de desenvolvimento de software: cc, make, db, ar, prof, diff, patch, SVN.

Bibliografia Complementar

Muhammad Ali Mazidi; 80X86 IBM PC and Compatible Computers: Assembly Language, Design, and Interfacing Volumes I & II, Prentice Hall, 2003. ISBN: 0-13-061775-X

Métodos de ensino e atividades de aprendizagem

"Aprender fazendo". Em cada uma das 7 primeiras aulas laboratoriais será elaborado um pequeno trabalho prático sobre um periférico do PC e aplicando uma técnica de programação de periféricos. Nas últimas 4 aulas laboratoriais será realizado um projecto proposto pelos estudantes que deverá integrar a maioria dos periféricos e técnicas estudadas.

Nas aulas teóricas será efectuada a exposição dos conceitos, tendo sempre em vista a sua aplicação prática, e serão também esclarecidos os pormenores necessários à realização dos trabalhos práticos.

Software

DJGPP: Plataforma de programação GNU para DOS e MS-Windows
SVN: Sistema de controlo de versões
NASM: "Assembler" para a arquitectura IA-32

Palavras Chave

Ciências Físicas > Ciência de computadores > Arquitectura de computadores
Ciências Físicas > Ciência de computadores > Programação

Tipo de avaliação

Avaliação distribuída sem exame final

Componentes de Avaliação

Descrição Tipo Tempo (Horas) Peso (%) Data Conclusão
Participação presencial (estimativa) Participação presencial 58,00
Desenvolvimento dos trabalhos laboratoriais Trabalho escrito 28,00 2010-11-17
Projecto Defesa pública de dissertação, de relatório de projeto ou estágio, ou de tese 40,00 2010-12-17
Total: - 0,00

Componentes de Ocupação

Descrição Tipo Tempo (Horas) Data Conclusão
Estudo dos conceitos e das APIs Estudo autónomo 36 2010-11-24
Total: 36,00

Obtenção de frequência

É obrigatória a elaboração, participação e apresentação do projecto final de integração e não exceder o limite de 4 faltas.

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

Soma_i(0,05 * Nota_Aula_i ) + 0,40 * Projecto + 0,10 * ApreciaçãoGlobal.
Onde Nota_Aula_i é a nota atribuída ao cumprimento dos objectivos definidos para a aula i, e onde i varia de 1 a 10, e corresponde às 10 melhores notas de todas as notas nas aulas práticas. .

Provas e trabalhos especiais

Em casos limite ou de dúvida poderá ser efectuada no fim do semestre uma pequena prova prática individual que decidirá a aprovação ou a nota final.

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

DA: Idêntica à dos estudantes normais.

TE: Para além do projecto final, terão ainda de apresentar, em local/hora a combinar com o regente da unidade curricular, 4 trabalhos práticos (1 cada 2 semanas, nas primeiras 8 semanas) idênticos aos trabalhos das aulas laboratoriais.

Melhoria de classificação

Elaboração de um conjunto de trabalhos práticos e de um projecto no ano lectivo seguinte.

Observações

Requisitos recomendados: Aprovação nas unidades curriculares de Programação e de Microprocessadores e Computadores Pessoais.

Em situações excepcionais (por exemplo, alunos erasmus inscritos na unidade curricular), as aulas poderão ser leccionadas em Inglês.
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-29 às 20:59:18 | Política de Utilização Aceitável | Política de Proteção de Dados Pessoais | Denúncias