Você está na página 1de 3

Arquitetura e Organização de Computadores

Engenharia de Computação 01/2006

Laboratório “Computador Neander”

Nome:_____________________________________RA:_______________Data:___/___/___

Responda as questões abaixo:

1.) Sabendo que uma das características do Neander é: largura de dados e endereço de oito
bits (um Byte) e sabendo que a unidade endereçável do Neander é de um Byte), quantas
unidades endereçáveis o Computador Neander pode endereçar? Demonstre o cálculo
utilizado para chegar ao resultado.

Resp.:

2.) Transforme os números abaixo representados na base dez, para binários de cinco bits
(incluindo o bit se sinal), representados na forma de “complemento a 2 “.

a-) 6 (10) b-) -7 (10) c-) -4 (10) d-) 3 (10)

Resp.:

3.) Qual é o modo de endereçamento usado pelo Neander? Explique.

Resp.:

4.) Qual instrução do Neander é usada para realizar “complemento a 1” de um número?

Resp.:

5.) Quantas unidades endereçáveis são utilizadas nas instruções do Neander?

Resp.:

Utilizando o Computador Neander

1
Arquitetura e Organização de Computadores
Engenharia de Computação 01/2006

Área de Dados  12810 (80H) até 25510 (FFH)


Área de Programa  010 (0H) até 12710 (7FH)
Exemplo: Faça um programa que realize a soma de 3 posições consecutivas da memória e
armazene o resultado numa quarta posição.
1º Inicialmente, vamos definir a área de dados e a área de programa da forma mostrada
acima.
2º  área de programa
Início do Programa posição 010 (0H)
área de dados
primeira parcela posição 12810 (80H)
segunda parcela posição 12910 (81H)
terceira parcela posição 13010 (82H)
resultado posição 13110 (83H)
3º  Abra o Neander e realize os seguintes passos:
- Clique na posição zero da memória de programa, digite o código da instrução
“LDA” (3210) e tecle enter.
- O Neander selecionará a segunda posição de memória de programa, digite o
endereço do operando (primeira parcela a ser carregada no acumulador AC), 128 10
e tecle enter.
- Digite o código da instrução “ADD” (4810) para somar a primeira parcela à segunda
e tecle enter.
- Digite o endereço do operando (segunda parcela a ser somada com a primeira),
12910 e tecle enter.
- Digite o código da instrução “ADD” (48 10) para somar a terceira parcela as outras
duas já somadas e tecle enter.
- Digite o endereço do operando (terceira parcela a ser somada com o conteúdo do
acumulador AC), 13010 e tecle enter.
- Digite o código da instrução “STA” (1610) para copiar o conteúdo de AC (resultado),
para a posição de memória 13110 e tecle enter.
- Digite o endereço do operando (posição de memória onde será copiado o
conteúdo), 13110 e tecle enter.
- Digite o código da instrução “Halt” (24010) para encerrar o programa.
- Clique na posição de memória de dados 128 10, digite o valor da primeira parcela e
tecle enter.
- Digite o valor da segunda parcela e tecle enter.
- Digite o Valor da terceira parcela e tecle enter.
- Para executar o programa passo a passo clique no botão “passo-a-passo" (ou F8),
o Neander executará uma instrução por vez. Para rodar o programa clique no
botão “Rodar” (ou F9), o Neander executa todas as instruções. Note as alterações
realizadas pelo Neander no acumulador (AC) e no contador de programa (PC).
- Para salvar o programa (ou a memória em um arquivo .mem) utilize o comando
Arquivo  “salvar...”
- Para salvar a memória em um arquivo texto utilize o comando arquivo  “salvar
texto”.
Utilizando o Computador Neander

2
Arquitetura e Organização de Computadores
Engenharia de Computação 01/2006

Exercícios:

1.) Limpar o acumulador: faça dois programas diferentes que zerem o acumulador.

2.) Somar duas variáveis de 8 bits: faça um programa para somar duas variáveis. As
variáveis e o resultado estão dispostos segundo o mapa de memória abaixo:
Posição 128: primeira variável
Posição 129: segunda variável
Posição 130: resultado

3.) Subtrair duas variáveis: faça um programa para subtrair duas variáveis de 8 bits.
O resultado deve aparecer na posição de memória consecutiva às ocupadas pelas
variáveis.
Posição 128: minuendo
Posição 129: subtraendo
Posição 130: resultado

4.) Contador decrescente: faça um programa que decremente 1 de uma variável até
que está contenha valor zero.
Posição 128: variável a ser decrementado

5.) Determinação de Overflow na soma: faça um programa que determine a ocorrência


de overflow na soma de duas variáveis. As variáveis são de 8 bits e estão
armazenadas em posições consecutivas de memória (128 e 129). O resultado da
soma também em 8 bits deve aparecer na primeira posição livre (130) e o overflow
deve ser indicado da seguinte forma:
Posição 131: conteúdo = 010 (0H) quando não ocorreu overflow
conteúdo = 25510 (FFH)

Obs: Salvar os programas em arquivos “.mem” e arquivos tipo texto.

Você também pode gostar