Projecto de Arquitectura de Computadores Jogo Cobra

Tamanho: px
Começar a partir da página:

Download "Projecto de Arquitectura de Computadores Jogo Cobra"

Transcrição

1 1 / 12 Projecto de Arquitectura de Computadores Jogo Cobra Versão Comentário Data 1.0 Publicação inicial. 14 de Abril de 2008

2 2 / 12 Índice 1 Introdução Descrição do Jogo Inicialização Cercadura e Obstáculos Cobra Jogo Insectos e Roedores Movimento da cobra Movimento do Rato Mutante Apresentação dos resultados Plano de desenvolvimento Microprogramação Desenvolvimento do jogo A recordar... 9 Anexo A Endereçamento na janela de I/O Anexo B Cenário de referência Anexo C Geração de sequência pseudo-aleatória... 12

3 3 / 12 1 Introdução Pretende-se desenvolver um jogo interactivo como forma de desenvolver as capacidades de programação em assembly e de microprogramação. Descrição geral e objectivo do jogo O jogo decorre num cenário construído na janela de I/O do simulador. As entidades relevantes para o jogo são a cobra, os seus alimentos (insectos e roedores) e os obstáculos do cenário de jogo: Cobra >###########- cabeça corpo cauda (em várias posições) V ####< ####### # # # # # # # # #########- #####- ^ Insectos e roedores Mosquito + Aranha M Rato mutante *~ cabeça cauda (em várias posições) ~ Obstáculos. As únicas entidades activas são a cobra, que se desloca no ecrã controlada pelo jogador a partir do teclado, e, ocasionalmente, o rato mutante. A colocação dos obstáculos e dos alimentos é controlada pelo programa. A cobra desloca-se na horizontal ou na vertical, da forma característica destes répteis, isto é avançando sempre sobre o rasto já traçado. A cobra deve comer o maior número possível de alimentos que vão sendo colocados

4 4 / 12 aleatoriamente no terreno de jogo e vai engordando (aumentando de tamanho) à medida que os vai comendo. O jogo termina quando a cobra bater contra um obstáculo ou contra o seu próprio corpo. Fases do jogo: 1. Inicialização; 2. Jogo Cobra; 3. Apresentação dos resultados. É parte essencial deste trabalho a microprogramação de uma nova instrução assembly que deverá ser utilizada no programa. 2 Descrição do Jogo 2.1 Inicialização O jogo inicia-se pelo desenho no ecrã (janela de I/O) do cenário do jogo constituído pela cercadura, que delimita a zona de jogo, pelos obstáculos, e, por fim, pela cobra, parada no centro do cenário Cercadura e Obstáculos A cercadura é um rectângulo preenchido com caracteres de obstáculo que rodeia o cenário. A cercadura é encostada ao canto superior esquerdo da janela de I/O. A dimensão do cenário é definida pelas variáveis NLin e NCol: NLin Word 12 ;número de linhas entre 8 e 22 Ncol Word 20 ;número de colunas entre 8 e 78, em potências de Em seguida são colocados os obstáculos.

5 5 / 12 As declarações seguintes produziriam o efeito representado na figura: ; Obst1 Obst2 STR STR Obst3 Obst4 STR STR Obst5 Obst6 STR STR Obst7 Obst8 STR STR Obst9 Obst10 STR STR Obst11 Obst12 STR STR A disposição de referência dos obstáculos (para um cenário cuja dimensão máxima é a da janela de I/O 24 linhas com 80 colunas) é incluída no Anexo B. Para cenários mais pequenos deverá usar a parte superior esquerda do cenário de referência, não se esquecendo de fechar a cercadura Cobra A cobra parte com a cabeça no centro do cenário e com a seguinte configuração: >###- 2.2 Jogo Após os obstáculos e a cobra terem sido implantados o jogo pode iniciar-se.

6 6 / 12 O jogo começa quando o jogador carregar numa tecla. A partir deste momento a cobra passa a deslocar-se segundo as indicações do jogador ou, por omissão, para onde tiver a cabeça voltada. O objectivo do jogo é fazer crescer o mais possível a cobra Insectos e Roedores Os insectos e os roedores "%", "M", "@~" são distribuídos no plano de jogo, um a um de uma forma pseudo-aleatória desde que não se sobreponham aos obstáculos nem à cobra. São colocados um ou dois alimentos de cada vez, só havendo novas colocações após todos os alimentos existentes serem comidos. As posições dos alimentos, os tipos de alimentos e o seu número (um ou dois alimentos) são gerados aleatoriamente recorrendo à instrução RND a microprogramar. As probabilidades de geração dos alimentos são as seguintes: Alimento Probabilidade de ocorrência % 75% M 5% Por vezes é gerado um rato mutante que ataca cobras representado por *~ em vez Este rato dirige-se ao encontro da cobra, contornando obstáculos e outros alimentos, e, embora não consiga matá-la, consegue seccionar-lhe o corpo dividindo-o em duas partes no local da mordedura, efectuada com a sua cabeça (* ). A parte da cobra ligada à cabeça prossegue o jogo, aparecendo uma nova cauda na cobra ( ou ) no local da mordedura, a outra parte da cobra fica inerte no cenário de jogo, passando a constituir mais um obstáculo (+ ). A probabilidade de geração de um rato mutante é proporcional ao número de ratos gerados. Ratos gerados Probabilidade de geração de um mutante 1º 20% 2º 40% 3º 60% 4º e posteriores 80% Naturalmente a cobra pode-se antecipar ao mutante e comê-lo. O mutante aniquila-se após ter mordido a cobra ou após ter sido comido por esta. Quer a cobra quer o mutante podem passar por cima de restos de cobra (+ ) limpando-os do cenário do jogo sem outras implicações.

7 7 / Movimento da cobra O movimento da cobra é controlado pelas teclas "H", "K", "J" e "L" que indicam o sentido do movimento. O simulador interpreta estas teclas como botões de interrupção (respectivamente I0 a I3). Tecla H K J L Sentido Por cada ciclo do programa a cobra desloca-se uma posição na horizontal ou na vertical, mantendo, obviamente, as partes do seu corpo sempre contíguas. Tendo sido dirigido o movimento da cobra num determinado sentido ela mantém o movimento nesse sentido até o movimento ser alterado pelo jogador ou a cobra embater com a cabeça na cercadura, num obstáculo ou no seu próprio corpo. A cobra come um alimento quando o apanha com a boca (cabeça), desaparecendo então o alimento do cenário e engordando a cobra. A cobra engorda por aumento de comprimento de acordo com a seguinte tabela: Alimento e-calorias (aumento da dimensão) % 1 M *~ 15 O crecimento da cobra faz-se à medida que ela se vai deslocando. Durante a fase de crescimento a cabeça avança mas a cauda mantém-se parada até se atingir a nova dimensão. Por configuração nos interruptores 0 a 2 (bits de menor peso do porto em FFF9h), em qualquer momento do jogo, deverá ser possível definir um nível de dificuldade que se traduz na variação da energia gasta pela cobra para se deslocar: Nível de dificuldade e-calorias (diminuição da dimensão) 0 [(bit 1 = 0) e (bit 2 = 0)] 0 1 [(bit 1 = 1) e (bit 2 = 0)] 1 por 40 posições 2 (bit 2 = 1) 1 por 20 posições Assim, dependendo do nível de dificuldade do jogo, a cobra vai diminuindo de tamanho à medida que se vai deslocando. A diminuição de tamanho ocorre junto à cauda.

8 8 / 12 O programa memoriza, mesmo entre jogos, o último nível seleccionado. De cada vez que se executa o programa arranca no nível Movimento do Rato Mutante O rato mutante desloca-se a um ritmo, metade do da cobra, de 1 posição por cada 2 ciclos de jogo. O mutante desenvolveu inteligência, sendo capaz de se dirigir no sentido de intersectar a cobra e parti-la a meio e de se esconder da cobra, fugindo para trás dos obstáculos que se interponham entre ambos. Deixa-se ao critério dos alunos o desenvolvimento das capacidades de inteligência e agressividade do mutante Apresentação dos resultados O número de leds acessos indica o nível de dificuldade seleccionado. Quando o jogo termina o cenário no plano de jogo permanece estático e no seu centro é apresentada a seguinte mensagem: PONTUAÇÃO: / MÁIMO:. QUER CONTINUAR? (S) Quando o jogador responder afirmativamente (tecla "S") avança-se para um novo jogo. 3 Plano de desenvolvimento 3.1 Microprogramação No âmbito do projecto dever-se-á microprogramar uma nova instrução assembly MAD (Matrix Address) que gera um endereço de memória de um elemento de uma matriz a partir da especificação da sua linha e coluna: MAD op1,op2 Endereço efectivo = Endereço_base + x * número_colunas + y, x linha, y coluna. op1 BASE + op1 NUMERO_COLUNAS + op2 MAD será aplicada para o acesso ao cenário de jogo, assumindo que: 1. O número de colunas do cenário de jogo é uma potência de 2; 2. O logaritmo na base 2 do número de colunas é armazenado na posição de memória 8000h; 3. O endereço de base da matriz que armazena o cenário de jogo é 8001h; 4. A matriz é armazenada sequencialmente na memória por linhas (primeiro a linha 0, depois a linha 1, etc.); 5. Cada posição do cenário é representada numa palavra de memória do P3.

9 9 / 12 O código (opcode) de MAD é (2Fh). Por restrição do simulador do P3 a mnemónica da instrução deverá ser I2OP. O funcionamento de MAD deverá ser demonstrado na 2ª aula para realização do trabalho. O jogo propriamente dito será demonstrado na 3ª aula. 3.2 Desenvolvimento do jogo No que respeita ao desenvolvimento do jogo deverão seguir-se os seguintes passos: 1. Desenhe o fluxograma que descreve a aplicação que pretende desenvolver. Descreva também claramente os algoritmos relevantes para as várias funções do jogo que vai programar (movimento da cobra, colocação dos alimentos, etc.). Programar e demonstrar a geração do cenário de jogo, incluindo a inserção da cobra estática. O fluxograma deverá ser apresentado na 1ª aula para a realização do projecto e será a base para a discussão das opções genéricas de projecto, ainda nesta aula. 2. Identifique as rotinas nas quais acha útil estruturar a aplicação. Por cada rotina identifique claramente as entradas e as saídas. 3. Apresente o código da sua aplicação devidamente comentado. Inclua nos comentários referências ao fluxograma para auxiliar a leitura do programa. 4. Tenha em conta que o seu programa é uma aplicação interactiva que se irá executar num ambiente de simulação. Um critério importante na avaliação da qualidade do resultado final será a sua rapidez de resposta. 5. Teste o seu programa com várias dimensões de cenário; primeiro teste a geração do plano de jogo e só depois o jogo propriamente dito. 6. Indique o seu plano de testes, isto é, identifique as diferentes condições e situações de jogo (dimensão do cenário, nível de dificuldade, choque com obstáculo, etc.) e, para cada uma delas, defina um plano de teste. 3.3 A recordar 1ª aula: Apresentar e discutir o fluxograma e as opções genéricas de projecto. Programar e demonstrar a geração do cenário de jogo. 2ª aula: Demonstrar o funcionamento da instrução microprogramada IOP. 3ª aula: Demonstrar a aplicação resultante da realização do fluxograma apresentado na 1ª aula. Entregar o relatório.

10 10 / 12 Anexo A Endereçamento na janela de I/O A janela de I/O é acessível no endereço de memória 0FFFFh: JanelaIO EQU 0FFFFh Por omissão, sempre que é feita uma escrita neste endereço é escrito um novo caracter na janela logo a seguir ao caracter anteriormente escrito (endereçamento sequencial). Para colocar a janela em modo de endereçamento aleatório em escritas, é necessário enviar-lhe o código 0FFFFh, o que provoca a entrada neste modo e a limpeza do écrã: M[JanelaIO] 0FFFFh Se o ecrã já tiver sido completamente preenchido não é necessário enviar este comando podendo imediatamente lançar-se acessos aleatórios; evita-se assim o tempo necessário à limpeza do ecrã. Um acesso aleatório consta de uma sequência de duas escritas em JanelaIO: M[JanelaIO] Posição M[JanelaIO] Caracter A posição é especificada numa palavra de 16 bits com a seguinte estrutura: 1 L6 L5 L4 L3 L2 L1 L0 C7 C6 C5 C4 C3 C2 C1 C L6-L0: Linha (entre 0 e 23) C7-C0: Coluna (entre 0 e 79) Bit 15 = 1, define o modo de endereçamento aleatório

11 11 / 12 Anexo B Cenário de referência

12 12 / 12 Anexo C Geração de sequência pseudo-aleatória O seguinte algoritmo (registo de deslocamento modificado com realimentação) gera uma sequência aparentemente aleatória de números de 16 bits, com distribuição uniforme (isto é, os números são equiprováveis), com um passo de repetição elevado: Máscara = b if (n 0 = 0) /* Testa o bit de menor peso */ N i+1 = rotate_right (N i ); else N i+1 = rotate_right (OR (N i, Mascara)); Em cada invocação desta função lê-se o valor anterior N i e gera-se um novo valor pseudoaleatório N i+1. A raíz desta sequência (N 0 0) pode ser obtida a partir de um parâmetro que varie com o decorrer do jogo (por exemplo, o número de ciclos de programa ou ciclos de espera entre a inicialização do programa e o início efectivo do jogo. Esta função pode ser utilizada para ajudar a gerar: as posições dos alimentos; o tipo de alimentos (mosquito, aranha ou rato) tendo em conta as probabilidades de ocorrência anteriormente definidas; o número de alimentos disponibilizados de cada vez (um ou dois).

Introdução à Arquitetura de Computadores

Introdução à Arquitetura de Computadores LICENCIATURA EM ENGENHARIA INFORMÁTICA E DE COMPUTADORES Introdução à Arquitetura de Computadores Tutorial do P3 Referência 2014 / 2015 INSTITUTO SUPERIOR TÉCNICO Paulo Lopes, José Costa 2014/2015 2 1.

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Arquitetura de Computadores 4º Trabalho de Laboratório Programação Assembly Objetivo: Pretende-se que os alunos compreendam a metodologia usada no desenvolvimento de programas em assembly, incluindo o

Leia mais

18/10/2010. Unidade de Controle Controle. UC Microprogramada

18/10/2010. Unidade de Controle Controle. UC Microprogramada Arquitetura de Computadores Unidade de Controle Controle Microprogramado Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO UC Microprogramada

Leia mais

Arquitectura de Computadores 2006/2007 2º Semestre 2º Teste (A) - 15/06/2007. Folha de Respostas

Arquitectura de Computadores 2006/2007 2º Semestre 2º Teste (A) - 15/06/2007. Folha de Respostas Arquitectura de Computadores 2006/2007 2º Semestre 2º Teste (A) - 15/06/2007 Número: Nome: INSTRUÇÕES: - A duração da prova é de 2 horas. - Responda apenas nesta Folha de Respostas ; nada mais será recebido.

Leia mais

Instituto Superior Técnico Licenciatura em Engenharia Informática e de Computadores. Projecto de. Arquitectura de Computadores.

Instituto Superior Técnico Licenciatura em Engenharia Informática e de Computadores. Projecto de. Arquitectura de Computadores. Instituto Superior Técnico Licenciatura em Engenharia Informática e de Computadores Projecto de Arquitectura de Computadores Jogo dos Blocos (variante do Arkanoid) (Versão 1.0) 2008/2009 Índice 1 Objectivo...

Leia mais

Lógica de Programação, Algoritmos e Estruturas de Dados

Lógica de Programação, Algoritmos e Estruturas de Dados Lógica de Programação, Algoritmos e Estruturas de Dados Professor: Vilson Heck Junior [email protected] Agenda Funções Básicas do Software; Relações entre áreas; Introdução à Algoritmos; Introdução

Leia mais

Microprocessadores I ELE Aula 7 Conjunto de Instruções do Microprocessador 8085 Desvios

Microprocessadores I ELE Aula 7 Conjunto de Instruções do Microprocessador 8085 Desvios Microprocessadores I ELE 1078 Aula 7 Conjunto de Instruções do Microprocessador 8085 Desvios Grupos de Instruções do 8085 As instruções no 8085 são distribuídas em 5 grupos: 1. Grupo de transferência da

Leia mais

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores Ano Lectivo de 2008/2009 2 o Semestre 1 o Teste 20 de Abril de 2009 Duração: 1h30+0h30 - O teste é sem consulta, apenas tem disponível o anexo que lhe deverá ter sido entregue

Leia mais

RESOLUÇÃO. Identifique todas as folhas! Não escreva nada fora dos rectângulos

RESOLUÇÃO. Identifique todas as folhas! Não escreva nada fora dos rectângulos Teste de Arquitectura de Computadores LEIC, LERCI e LEE IST - Taguspark Profs responsáveis: José Delgado e Rui Rocha 2º Semestre 2004/2005 1º teste, turno B 2 de Abril de 2004 RESOLUÇÃO Início: 10H00 FIM:

Leia mais

FCA - Editora de Informática xv

FCA - Editora de Informática xv Índice Geral Agradecimentos ix Prefácio xi Índice das Simulações xxv 1 - Introdução ao mundo dos computadores 1 1.1 O computador como ferramenta... 2 1.2 A importância dos computadores... 4 1.3 Processamento

Leia mais

FORMAÇÃO DE MICROSOFT WORD Mário de Almeida Pedro, M. Sc. Janeiro 2014

FORMAÇÃO DE MICROSOFT WORD Mário de Almeida Pedro, M. Sc. Janeiro 2014 FORMAÇÃO DE MICROSOFT WORD 2007 Mário de Almeida Pedro, M. Sc. Janeiro 2014 Bemvindo Identificação da UFCD UFCD nº 0754 Processador de Texto, com a duração de 50 horas Microsoft Word 2007 Para criar um

Leia mais

ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2006/2007

ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2006/2007 ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA INTRODUÇÃO À PROGRAMAÇÃO (ENG. INFORMÁTICA) COMPUTADORES E PROGRAMAÇÃO I (ENG. ELECTROTÉCNICA) 2006/2007 TRABALHO PRÁTICO Nº

Leia mais

Instituto Superior Técnico

Instituto Superior Técnico Introdução à Arquitectura de Computadores Instituto Superior Técnico Lisboa, Setembro de 2013 O Simulador Lógico Logisim 1 Introdução... 2 2 Exemplo de projecto... 3 2.1 Especificação do sistema... 3 2.2

Leia mais

Windows 95/98/Me/2000

Windows 95/98/Me/2000 Windows 95/98/Me/2000 Mais que um Sistema Operativo, o MS-Windows é um ambiente de trabalho que simula no ecrã o trabalho diário sobre uma secretária. A ideia base do MS-Windows foi a de esconder a organização

Leia mais

PROJECTO DE UM SISTEMA DE FECHADURA ELECTRÓNICA

PROJECTO DE UM SISTEMA DE FECHADURA ELECTRÓNICA TRABALHO DE LABORATÓRIO V PROJECTO DE UM SISTEMA DE FECHADURA ELECTRÓNICA 1. INTRODUÇÃO Pretende-se com este trabalho que os alunos projectem um sistema de fechadura electrónica. Este trabalho é considerado

Leia mais

Arquitectura de Computadores (ACom)

Arquitectura de Computadores (ACom) Arquitectura de Computadores (ACom) MEAer Acetatos das Aulas Teóricas Versão 5.0 - Português Aula N o 13: Título: P3 - Sumário: Unidade de do P3 (micro-sequenciador, teste de variáveis, memórias de mapeamento,

Leia mais

ARQUITECTURA DE COMPUTADORES

ARQUITECTURA DE COMPUTADORES ARQUITECTURA DE COMPUTADORES 3º Trabalho de Laboratório Unidade de Controlo Microprogramada Objectivo: Pretende-se que os alunos compreendam a metodologia usada na implementação, programação e teste de

Leia mais

PROGRAMAÇÃO DE COMPUTADORES I BCC Aula Prática 15

PROGRAMAÇÃO DE COMPUTADORES I BCC Aula Prática 15 Exercício 1 PROGRAMAÇÃO DE COMPUTADORES I BCC701 2017-1 Aula Prática 15 No jogo Inventei, cada posição do tabuleiro é representada por suas coordenadas x e y e contém um número. O tabuleiro pode ser representado

Leia mais

Porque usar um montador? Formato de uma linha de código fonte:

Porque usar um montador? Formato de uma linha de código fonte: Instruções de uso do montador DAEDALUS (baseadas em texto extraído da monografia apresentada como trabalho de diplomação no curso de Bacharelado em Ciência da Computação por Luís Ricardo Schwengber, sob

Leia mais

Comunicação IHMs Beijer Electronics com CLPs Altus

Comunicação IHMs Beijer Electronics com CLPs Altus Nota de Aplicação Comunicação IHMs Beijer Electronics com CLPs Altus Altus Sistemas de Informática S.A. Página: 1 Sumário 1 Descrição... 3 2 Introdução... 3 3 Definição da Arquitetura de Referência...

Leia mais

Introdução à Computação: Arquitetura von Neumann

Introdução à Computação: Arquitetura von Neumann Introdução à Computação: Arquitetura von Neumann Beatriz F. M. Souza ([email protected]) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,

Leia mais

MICROPROCESSADORES. Unidade de Entrada/Saída (I/O) Nuno Cavaco Gomes Horta. Universidade Técnica de Lisboa / Instituto Superior Técnico

MICROPROCESSADORES. Unidade de Entrada/Saída (I/O) Nuno Cavaco Gomes Horta. Universidade Técnica de Lisboa / Instituto Superior Técnico MICROPROCESSADORES (I/O) Nuno Cavaco Gomes Horta Universidade Técnica de Lisboa / Instituto Superior Técnico Sumário Introdução Unidade de Processamento Unidade de Controlo Conjunto de Instruções Unidade

Leia mais

Projecto de Algoritmos e Estruturas de Dados

Projecto de Algoritmos e Estruturas de Dados Projecto de Algoritmos e Estruturas de Dados Licenciatura em Engenharia Electrotécnica e de Computadores Licenciatura em Engenharia Electrónica 1 o ano, 2 o Semestre, 2005/2006 Instituto Superior Técnico

Leia mais

Manual do KBounce. Tomasz Boczkowski Revisão: Eugene Trounev Tradução: José Pires

Manual do KBounce. Tomasz Boczkowski Revisão: Eugene Trounev Tradução: José Pires Tomasz Boczkowski Revisão: Eugene Trounev Tradução: José Pires 2 Conteúdo 1 Introdução 6 2 Como Jogar 7 3 Regras do Jogo, Estratégias e Sugestões 8 3.1 Regras do Jogo........................................

Leia mais

2.1 Circuitos electrónicos analógicos Circuitos electrónicos digitais...29

2.1 Circuitos electrónicos analógicos Circuitos electrónicos digitais...29 Índice Geral Agradecimentos... vii Prefácio... ix Índice Geral... xiii Índice das Simulações... xxiii Índice das Figuras... xxvii Índice das Tabelas... xli Índice dos Programas... li 1 - Introdução ao

Leia mais

Conjunto de Instruções (ISA) I

Conjunto de Instruções (ISA) I Conjunto de Instruções (ISA) I José Costa Introdução à Arquitetura de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2013-10-16 José Costa (DEI/IST) Conjunto de Instruções

Leia mais

Programação em Scratch

Programação em Scratch Abre o Scratch on-line através do teu navegador em https://scratch.mit.edu/ Acede à tua área e cria um novo projeto. Dá-lhe o nome de Halloween. Monta o seguinte cenário: Vamos agora programar os atores

Leia mais

Arquitectura de Computadores (ACom)

Arquitectura de Computadores (ACom) Arquitectura de Computadores (ACom) MEAer Acetatos das Aulas Teóricas Versão 5.0 - Português Aula N o 06: Título: : entradas e saídas, interrupções e temporizador Sumário: desenvolvimento do ; ; Entradas

Leia mais

Circuitos Sequenciais Escola Naval - Dep. Armas e Electrónica v

Circuitos Sequenciais Escola Naval - Dep. Armas e Electrónica v CIRCUITOS SEQUENCIAIS ESTRUTURA GERAL Varáveis de entrada Variáveis de saída Variáveis de estado Circ. combinatório Memória Circuito Combinatório Memória Actual Seguinte CIRCUITOS SEQUENCIAIS Exemplo :

Leia mais

2.º Teste de Introdução à Arquitetura de Computadores IST LEIC-Taguspark 1.º Semestre 2014/2015 Duração: 60 minutos 16 dezembro 2014

2.º Teste de Introdução à Arquitetura de Computadores IST LEIC-Taguspark 1.º Semestre 2014/2015 Duração: 60 minutos 16 dezembro 2014 2.º Teste de Introdução à Arquitetura de Computadores IST LEIC-Taguspark 1.º Semestre 2014/2015 Duração: 60 minutos 16 dezembro 2014 NOME NÚMERO 1. (1,5+1,5 + 1 valores) Considere o seguinte programa,

Leia mais

Programação. Folha Prática 5. Lab. 5. Departamento de Informática Universidade da Beira Interior Portugal. Copyright 2010 All rights reserved.

Programação. Folha Prática 5. Lab. 5. Departamento de Informática Universidade da Beira Interior Portugal. Copyright 2010 All rights reserved. Programação Folha Prática 5 Lab. 5 Departamento de Informática Universidade da Beira Interior Portugal Copyright 2010 All rights reserved. 1. Revisão. 2. Objectivos. 3. Exercícios LAB. 5 5ª semana ESTRUTURAS

Leia mais

LÓGICA DE PROGRAMAÇÃO. Algoritmos Computacionais. Sérgio Carlos Portari Júnior

LÓGICA DE PROGRAMAÇÃO. Algoritmos Computacionais. Sérgio Carlos Portari Júnior LÓGICA DE PROGRAMAÇÃO Algoritmos Computacionais Sérgio Carlos Portari Júnior [email protected] Tópicos abordados Algoritmos Computacionais Estrutura de Dados Tipos Primitivos Constantes Variáveis

Leia mais

- Aula 01, 02, 03 e 04 Apresentação da disciplina.

- Aula 01, 02, 03 e 04 Apresentação da disciplina. 1 - Aula 01, 02, 03 e 04 Apresentação da disciplina. Disciplina: Algoritmos (Disciplina é pré-requisito para outras disciplinas). Plano de Ensino: Estrutura Sequencial, Estrutura de Decisão (Desvio Condicional

Leia mais

Compilador de LP3 para C3E e P3

Compilador de LP3 para C3E e P3 Compilador de LP3 para C3E e P3 Luís Gil 1 13 de Junho de 2005 1 estudante de Ciências Informáticas no Instituto Superior Técnico 1 Introdução Este relatório descreve a sintaxe e a semântica da Linguagem

Leia mais

LINGUAGEM C: FUNÇÕES FUNÇÃO 08/01/2018. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa.

LINGUAGEM C: FUNÇÕES FUNÇÃO 08/01/2018. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa. LINGUAGEM C: FUNÇÕES Prof. André Backes FUNÇÃO Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa. printf(): função que escreve na tela scanf(): função que lê o teclado

Leia mais

ANÁLISE DE ALGORITMOS: PARTE 1. Prof. André Backes. Como resolver um problema no computador? Precisamos descrevê-lo de uma forma clara e precisa

ANÁLISE DE ALGORITMOS: PARTE 1. Prof. André Backes. Como resolver um problema no computador? Precisamos descrevê-lo de uma forma clara e precisa ANÁLISE DE ALGORITMOS: PARTE 1 Prof. André Backes Algoritmos 2 Como resolver um problema no computador? Precisamos descrevê-lo de uma forma clara e precisa Precisamos escrever o seu algoritmo Um algoritmo

Leia mais

Arquitectura de Computadores 2007/2008 2º Semestre 1º Teste (A) - 30/04/2008. Folha de Respostas

Arquitectura de Computadores 2007/2008 2º Semestre 1º Teste (A) - 30/04/2008. Folha de Respostas Arquitectura de Computadores 00/00 º Semestre º Teste (A) - 0/0/00 Número: Nome: INSTRUÇÕES: - A duração da prova é de, horas. - Responda apenas nesta Folha de Respostas ; nada mais será recebido. - Identifique

Leia mais

Unidade de Controle. UC - Introdução

Unidade de Controle. UC - Introdução Unidade de Controle Prof. Alexandre Beletti (Cap. 3 Weber, Cap.8 Monteiro, Cap. 10,11 Stallings) UC - Introdução Para gerenciar o fluxo interno de dados e o instante em que ocorrem as transferências entre

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I BARRAMENTO Slide 1 Sumário Introdução Componentes de Computador Funções dos Computadores Estruturas de Interconexão Interconexão de Barramentos Slide 2 Introdução

Leia mais

1 REPRESENTAÇÃO DIGITAL DE INFORMAÇÃO Bases de Numeração Representação de Números em Base 2 5

1 REPRESENTAÇÃO DIGITAL DE INFORMAÇÃO Bases de Numeração Representação de Números em Base 2 5 PREFÁCIO 1 REPRESENTAÇÃO DIGITAL DE INFORMAÇÃO 1 1.1 Bases de Numeração 3 1.1.1 Representação de Números Inteiros em Base b 3 1.1.2 Representação de Números em Base 2 5 1.1.3 Representação de Números Fraccionários

Leia mais

BEKS. Modelos: BEKY e BEKS. Manual de Referência Rápida

BEKS. Modelos: BEKY e BEKS. Manual de Referência Rápida BEKS Modelos: BEKY e BEKS Manual de Referência Rápida Junho, 2017 Ícone Nome Descrição USB Imp./Exp. Entrada e Saída de bordados a partir de uma memória USB Pen Drive. Memória Acesso às 100 posições de

Leia mais

TimeNET. REPORTU Digital-Time. Manual de Utilizador do Software. Gestão de Assiduidade e Controlo de Acessos Página 1 de 35

TimeNET. REPORTU Digital-Time. Manual de Utilizador do Software. Gestão de Assiduidade e Controlo de Acessos Página 1 de 35 Página 1 de 35 Manual de Utilizador do Software TimeNET Gestão de Assiduidade e Controlo de Acessos Página 2 de 35 CONSIDERAÇÕES INICIAIS: - O Software TimeNET foi desenvolvido com as mais recentes tecnologias

Leia mais

Arquitectura de Computadores

Arquitectura de Computadores Nuno Cavaco Gomes Horta Universidade Técnica de Lisboa / Instituto Superior Técnico Sumário Introdução Unidade de Processamento Unidade de Controlo Conjunto de Instruções (CPU) Unidade de Entrada/Saída

Leia mais

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores Fundamentos (9, 10.1 a 10.3) José Monteiro Licenciatura em Engenharia Informática e de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico

Leia mais

Teclado. Mike McBride Anne-Marie Mahfouf Tradução: José Pires

Teclado. Mike McBride Anne-Marie Mahfouf Tradução: José Pires Mike McBride Anne-Marie Mahfouf Tradução: José Pires 2 Conteúdo 1 A página Hardware 4 2 A página de Disposições 4 3 A página Avançado 5 3 Este módulo permite-lhe escolher como funciona o seu teclado. Existem

Leia mais

INSTITUTO SUPERIOR TÉCNICO

INSTITUTO SUPERIOR TÉCNICO INSTITUTO SUPERIOR TÉCNICO Arquitectura de Computadores 2 o Semestre (2010/2011) LEIC-A, MEIC-A Departamento de Engenharia Informática 1 o Teste (A) - 7 de Abril de 2011 Duração: 1h30 + 0h30 Regras: O

Leia mais

INSTITUTO SUPERIOR TÉCNICO. Arquitectura de Computadores (ACom)

INSTITUTO SUPERIOR TÉCNICO. Arquitectura de Computadores (ACom) UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Departamento de Engenharia Informática Arquitectura de Computadores (ACom) LEIC-A, MEIC-A Acetatos das Aulas Teóricas Versão 1.0 - Português Aula

Leia mais

Manual Prático. Elisabete Aguiar

Manual Prático. Elisabete Aguiar Manual Prático Elisabete Aguiar Índice A BARRA DE OPÇÕES... 4 Abrir um documento existente... 6 Guardar um documento Word... 7 Ambiente de Trabalho no Microsoft Word 2007... 9 Configuração de Páginas...

Leia mais

HANDS-ON PROGRAMAÇÃO DE JOGOS PARA CRIANÇAS

HANDS-ON PROGRAMAÇÃO DE JOGOS PARA CRIANÇAS HANDS-ON PROGRAMAÇÃO DE JOGOS PARA CRIANÇAS Hoje vamos criar nosso primeiro jogo utilizando o Scratch, trabalharemos com Labirintos, você sabe o que é? Veja nosso Robô XM, ele precisa chegar ao quadradinho

Leia mais

PROGRAMAÇÃO DE MICROPROCESSADORES 2011 / 2012

PROGRAMAÇÃO DE MICROPROCESSADORES 2011 / 2012 Departamento de Engenharia Electrotécnica PROGRAMAÇÃO DE MICROPROCESSADORES 2011 / 2012 Mestrado Integrado em Engenharia Electrotécnica e Computadores 1º ano 1º semestre Trabalho nº 5 Funções http://tele1.dee.fct.unl.pt/pm

Leia mais

Introdução aos Computadores Introdução à Ciência de Computadores Outubro 2011 1 / 16

Introdução aos Computadores Introdução à Ciência de Computadores Outubro 2011 1 / 16 Introdução aos Computadores Introdução à Ciência de Computadores Nelma Moreira Departamento de Ciência de Computadores da FCUP Outubro 2011 Introdução aos Computadores Introdução à Ciência de Computadores

Leia mais

Programação em Scratch

Programação em Scratch Abre o Scratch on-line através do teu navegador em https://scratch.mit.edu/ Acede à tua área e cria um novo projeto. Dá-lhe o nome de Terror. Monta o seguinte cenário: Vamos agora programar os atores para

Leia mais

UFCD 778 Folha de Cálculo Formadora: Sónia Rodrigues

UFCD 778 Folha de Cálculo Formadora: Sónia Rodrigues UFCD 778 Formadora: Sónia Rodrigues UFCD 778 - - Operação e Programação Objectivos da UFCD: Utilizar e programar aplicações informáticas de folha de cálculo. UFCD 778 - - Operação e Programação 2 1 Folha

Leia mais

Organização e Arquitetura de Computadores INTRODUÇÃO

Organização e Arquitetura de Computadores INTRODUÇÃO Organização e Arquitetura de Computadores INTRODUÇÃO A Arquitetura de Computadores trata do comportamento funcional de um sistema computacional, do ponto de vista do programador (ex. tamanho de um tipo

Leia mais

Guia o MPLAB IDE (v8.92)

Guia o MPLAB IDE (v8.92) Guia o MPLAB IDE (v8.92) Descrição Este documento é um guia rápido de utilização do ambiente de desenvolvimento da Microchip para os microcontroladores de oito bits da série 16F6xxx estudados nas disciplinas

Leia mais

Tarefa Orientada 7 Consultas de selecção

Tarefa Orientada 7 Consultas de selecção Tarefa Orientada 7 Consultas de selecção Objectivos: Consultas de selecção O Sistema de Gestão de Bases de Dados MS Access Consultas As consultas (queries) permitem interrogar a base de dados, de acordo

Leia mais

1 o º ciclo. Índice TUTORIAL

1 o º ciclo. Índice TUTORIAL 1 o º ciclo Índice ABRIR O EXCEL 2 O ambiente de trabalho do Excel.3 O botão do Office 4 OPERAÇÕES COM FOLHAS DE CÁLCULO.. 4 Criar um documento novo 4 Colunas, linhas e células. 5 Inserir Fórmulas 6 TUTORIAL

Leia mais

Existem três formas básicas de efectuar operações de entrada/saída:

Existem três formas básicas de efectuar operações de entrada/saída: Unidades de I/O Interface Entrada/Saída Existem três formas básicas de efectuar operações de entrada/saída entrada/saída isoladaas instruções IN e OUT transferem dados entre o registo AX ou a memória e

Leia mais

Barramentos: interface e temporização

Barramentos: interface e temporização Barramentos: interface e temporização Os barramentos (endereços, dados, controlo) são o meio de comunicação entre o microcontrolador e o exterior A nossa análise deste assunto incidirá sobre dois tipos

Leia mais

PROGRAMAÇÃO I. Introdução

PROGRAMAÇÃO I. Introdução PROGRAMAÇÃO I Introdução Introdução 2 Princípios da Solução de Problemas Problema 1 Fase de Resolução do Problema Solução na forma de Algoritmo Solução como um programa de computador 2 Fase de Implementação

Leia mais

UNIDADE DE CONTROLE E CONTROLE MICROPROGRAMADO. Adão de Melo Neto

UNIDADE DE CONTROLE E CONTROLE MICROPROGRAMADO. Adão de Melo Neto UNIDADE DE CONTROLE E CONTROLE MICROPROGRAMADO Adão de Melo Neto 1 INTRODUÇÃO O objetivo é mostrar como a unidade de controle controla a execução de cada instrução em ASSEMBLY. Atividades da Unidade de

Leia mais

Exercícios resolvidos (aula de 4 de Maio) Resolução:

Exercícios resolvidos (aula de 4 de Maio) Resolução: Exercícios resolvidos (aula de 4 de Maio) 1. Um microprocessador gera endereços de memória de 14 bits. Desenhe um mapa de memória dos seus endereços de memória fronteira especificados em hexadecimal. Uma

Leia mais

Robótica com Arduino Professor: Paulo Marcos Trentin

Robótica com Arduino Professor: Paulo Marcos Trentin Robótica com Arduino Professor: Paulo Marcos Trentin CDI Onde comprar o Arduino? http://lojabrasilrobotics.blogspot.com/ Onde comprar o Arduino? http://www.mercadolivre.com.br/ Onde comprar o Arduino?

Leia mais

Manual de Utilizador. Instruções gerais de utilização SIGRHE

Manual de Utilizador. Instruções gerais de utilização SIGRHE Manual de Utilizador Instruções gerais de utilização do SIGRHE janeiro de 2019 Índice 1 ENQUADRAMENTO... 5 1.1 Aspetos gerais... 5 1.2 Acesso ao sistema... 5 1.3 Definições, Abreviaturas, Acrónimos e Legenda...

Leia mais

Esta pseudomáquina foi criada em homenagem ao homem de Neandertal, o antecessor do homo sapiens.

Esta pseudomáquina foi criada em homenagem ao homem de Neandertal, o antecessor do homo sapiens. Documentação Neander C O Neander C O computador hipotético Neander Características Modos de endereçamento Conjunto de instruções Obtendo o Neander C Compilando o Neander C Executando o Neander C Programando

Leia mais

INICIAÇÃO AO EXCEL Renato Albuquerque abril de 2016

INICIAÇÃO AO EXCEL Renato Albuquerque abril de 2016 Noções básicas Vamos trabalhar com o Microsoft Office EXCEL 2010, software que está instalado em todos os computadores da escola. O EXCEL é uma folha de cálculo eletrónica, isto é, um programa que permite

Leia mais

Praticar os princípios da ordenação, cópia de formatos, hifenização, trabalho com múltiplos documentos, modos de visualização e impressão.

Praticar os princípios da ordenação, cópia de formatos, hifenização, trabalho com múltiplos documentos, modos de visualização e impressão. Sessão nº 7 Mais opções de formatação e impressão Objectivos: Praticar os princípios da ordenação, cópia de formatos, hifenização, trabalho com múltiplos documentos, modos de visualização e impressão.

Leia mais