Upload
tas-aqui-tas-apanhado
View
3
Download
0
Embed Size (px)
DESCRIPTION
LAB4 IST MEEC
Citation preview
1 de 3
ARQUITECTURA DE COMPUTADORES
4 Trabalho de Laboratrio
Programao Assembly
Objectivo: Pretende-se que os alunos compreendam a metodologia usada no desenvolvimento de programas em assembly, incluindo o uso de perifricos e de rotinas de interrupo. A programao ser desenvolvida para o
processador P3, sendo utilizado um assemblador e um simulador disponibilizados para o efeito. O trabalho ter a
durao de duas semanas, devendo todo o projecto ser entregue na 2 aula de laboratrio. O trabalho dever ser preparado fora do horrio de laboratrio, destinando-se as horas de laboratrio resoluo de eventuais problemas, e demonstrao do trabalho realizado. essencial a consulta do texto Manual do Simulador do Processador P3, e aconselha-se o estudo do programa de demonstrao disponibilizado. Este material est disponvel na pgina da cadeira.
1 JOGO DE TNIS - DESCRIO DE FUNCIONALIDADES
Pretende-se com este trabalho implementar uma verso do jogo de tnis para computador.
O jogo a implementar dever ter as seguintes caractersticas:
(1) ser disputado entre 2 jogadores e durar no mximo 2 minutos;
(2) apresentar o resultado e tempo restante do jogo em tempo real;
(3) permitir a escolha de 1 de 4 nveis de dificuldade (2 velocidades e 2 tamanhos de raquetes);
(4) permitir colocar o jogo em pausa e reiniciar e, ainda, iniciar ou parar o jogo a qualquer momento;
N1 01:27
P
P A S S
G
1
R
G
2
G
3
G
4
W O R D
S
Fig. 1 Janela de Placa e Janela de Texto para implementar o jogo de tnis.
2 de 3
2 JOGO DE TNIS - CARACTERSTICAS DE IMPLEMENTAO
A implementao das funcionalidades descritas para o parqumetro deve seguir as seguintes regras (ver fig. 1):
(1) Janela de Texto (1 Semana)
a. Dever servir para representar o jogo. A representao dever incluir uma linha de meio campo, 2 traos representando as raquetes e o representando a bola. Os 4 nveis de dificuldade correspondem a considerar 2 tamanhos para as raquetes (1/8 e 1/4 do nmero de linhas) e 2 velocidades para a bola e para o movimento das raquetes.
b. O campo de cada jogador deve ter 4 zonas de proximidade da rede e quanto mais perto da rede estiver quando tocar na bola mais rpida deve seguir a bola. A velocidade deve aumentar sempre que o jogador acerta na bola numa zona mais prxima da rede, na zona mais distante a velocidade ser 1, na seguinte 2, depois 3 e, finalmente, 4 quando estiver na zona mais prxima da rede. O nmero de pontos obtido corresponder velocidade com que a bola foi jogada.
c. Considerar para o jogador da esquerda as teclas W, S, A e D, e para o da direita as teclas I,J,K e L. Com estas teclas deve permitir deslocar a respectiva raquete para cima e para baixo, para a direita e para a esquerda. Os movimentos para cima e para baixo devem corresponder a um deslocamento da dimenso da raquete. Os movimentos para a direita e para a esquerda devem colocar a raquete a meio da prxima zona do campo.
d. O jogo acaba ao fim de 2 minutos ou quando um jogador fizer 20 pontos.
(2) Janela de Interface (2 Semana)
a. LCD: No LCD dever ser apresentado (1) o tempo restante de jogo (2 minutos em contagem decrescente); (2) o nvel de dificuldade do jogo (N1 a N4)
b. DISPLAYS de 7 segmentos: Dever apresentar o resultado do jogo em tempo real.
c. Botes de Interrupo: Devero ser utilizados conforme indicado na figura para dar incio ao jogo de nvel 1 a 4 (G1 a G4), parar ou comear o jogo (S), reinicializar relgio e resultado (R), fazer uma pausa (P).
d. Interruptores: Os interruptores servem para introduzir uma password binria de 8 bits, s com a configurao correta devem ser permitidas as interrupes.
e. LEDS: Podem ser utilizados livremente por cada grupo, sejam criativos!.
(3) Memria de Dados:
a. A memria de dados pode ser utilizada para guardar parte da informao relativa implementao das vrias funcionalidades do jogo.
Todas as questes adicionais, sobre o funcionamento e implementao do jogo, no definidas no enunciado ficam ao
critrio de cada grupo, sejam criativos!
3 PREPARAO E PLANEAMENTO DO PROJECTO
Comece por estudar a arquitectura (a nvel do programador) e o conjunto de instrues do P3 (consulte [4]). Instale o assemblador e o simulador do P3, e familiarize-se com o respectivo funcionamento e potencialidades (carregamento de programas, simulao, visualizao do contedo dos registos, debug, perifricos disponveis, funcionamento das interrupes, etc.). Teste essas funcionalidades e potencialidades atravs do desenvolvimento e anlise de pequenos programas de teste:
Familiarize-se com a estrutura bsica dos programas em assembly para o P3;
Desenvolva rotinas para interaco com os perifricos disponibilizados (dado que essas rotinas sero quase de certeza utilizadas no trabalho, conveniente desenvolver procedimentos genricos que possam ser reutilizados posteriormente preocupe-se nomeadamente, com a passagem de parmetros para essas rotinas);
Familiarize-se com a implementao e funcionamento de rotinas de interrupo e com o temporizador.
3 de 3
Utilize os conhecimentos adquiridos na cadeira de programao quando escrever o seu cdigo, nomeadamente no que diz respeito estruturao e organizao de programas em subrotinas, e ainda no que diz respeito a comentrios e documentao dessas subrotinas.
4 FASEAMENTO E AVALIAO
O trabalho decorrer durante duas semanas, devendo ser discutido, apresentado e entregue o relatrio na 2 aula de laboratrio (Max. 10 pginas incluindo o cdigo comentado). O trabalho dever ser planeado e desenvolvido, tanto quanto possvel, fora do horrio de laboratrio, sendo impossvel realiza-lo sem qualquer preparao prvia e apenas durante as 3 horas de laboratrio.
Na 1 aula de laboratrio devem ser tiradas todas e quaisquer dvidas sobre o projecto. No 2 laboratrio apenas ser efectuada a visualizao dos projectos.
O trabalho ser avaliado da seguinte forma:
1. Projecto a entregar na 2 aula de laboratrio (4 valores), que consiste no seguinte:
Fluxograma simplificado com a estrutura do programa desenvolvido. (1 val.);
Listagem do cdigo DEVIDAMENTE COMENTADO, onde sero avaliados a qualidade do cdigo (estruturao, eficincia dos algoritmos, etc.) e a qualidade dos comentrios; (2 val.);
Apresentao do relatrio (1 val.);
Cdigo em formato digital (ficheiro(s) *.as), a ser recolhido pelo corpo docente, deve ser o mesmo cdigo que seja apresentado no relatrio/listagem.
2. Funcionamento do programa (16 valores), avaliado nos seguintes pontos:
Janela de Interface
o DISPLAY 7 Segmentos Resultado do jogo em tempo real: (1 Val.)
o LCD Nvel do jogo, tempo de jogo restante (Temporizador): (2 Val.)
o Interrupes Comeo do jogo, paragem, reinicializao, pausa e nveis de jogo: (4 Val.)
o Interruptores - Password: (1 Val.)
Janela de Texto
o Representao esttica do campo, das raquetes e da bola: (2 Val.)
o Representao dinmica, i.e., movimento correto das raquetes e da bola: (6 Val.)
5 BIBLIOGRAFIA
[1] N. Horta, Arquitectura de Computadores, Aulas Tericas, 2013. [2] M. Morris Mano, Charles R. Kime, Logic and Computer Design Fundamentals, 4th Edition Updated, Prentice-Hall International, 2008. [3] G. Arroz, J. Monteiro, A. Oliveira, Arquitectura de Computadores: dos Sistemas Digitais aos Microprocessadores, IST Press, 2007. [4] G. Arroz, J.C. Monteiro, A. Oliveira, Manual do Simulador do P3, IST, 2005