Simulador neander x

Disponível somente no TrabalhosFeitos
  • Páginas : 3 (677 palavras )
  • Download(s) : 0
  • Publicado : 7 de abril de 2012
Ler documento completo
Amostra do texto
UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL
INSTITUTO DE INFORMÁTICA - DEPARTAMENTO DE INFORMÁTICA APLICADA


INF01107 - Arquitetura e Organização de Computadores I – Turma A - 2008


TrabalhoPrático 1 - Simulador NEANDER


Escrever um programa para o simulador Neander que implemente as quatro operações aritméticas básicas (soma, subtração, multiplicação e divisão) sobre números inteirospositivos, representados em complemento de dois (ou seja, os operados estão na faixa entre 0 e 127, inclusive).

Para a definição da operação devem ser obrigatoriamente utilizadas as seguintesposições:

Palavra 128 – primeiro operando da operação
Palavra 129 – segundo operando da operação
Palavra 130 – código da operação (1: soma, 2: subtração, 3: multiplicação, 4: divisão)Palavra 131 – resultado da operação
Palavra 132 – código de erro (veja abaixo)

Não é necessário realizar nenhum teste sobre a correção do resultado, ou seja, eventuais "vai-um" ou estouros derepresentação devem ser ignorados. A operação de divisão corresponde a uma divisão inteira, ou seja, o quociente é um número inteiro e o resto é descartado. A correção da entrada deve ser indicadaatravés dos seguintes códigos no endereço 132:


Código 0: entrada correta
Código 1: operando(s) fora da faixa, ou seja, negativo(s)
Código 2: operandos dentro da faixa, mas código deoperação inválido
Código 4: tentativa de divisão por zero

Em caso de erro, deve ser devolvido zero como resultado da operação.

Os valores das posições 128 a 130 de memória não devem seralterados pelo programa.

Dicas:
1. O simulador Neander não possui operação de subtração. Entretanto, uma subtração pode ser transformada em uma soma através do complemento do subtraendo.
2. Osimulador Neander não possui operação de multiplicação. Entretanto, uma multiplicação não é nada mais que uma série de somas sucessivas.
3. O simulador Neander não possui operação de divisão. Entretanto,...
tracking img