Trabalho neander
Escrever um programa para o simulador Neander que implemente dois operações básicas (multiplicação por 2 e por 4) de potenciação (A2, A3) sobre números inteiros positivos, representados como números sem sinal (ou seja, os operados estão na faixa entre 0 e 255, inclusive). Para a definição da operação devem ser obrigatoriamente utilizadas as seguintes posições de memória: Palavra 128 – contém o operando da operação (A) Palavra 130 – contém código da operação: 01 – multiplicação de A * 2 02 – multiplicação de A * 4 03 – potenciação de A2 04 – potenciação de A3 Palavra 131 – recebe código de erro (veja abaixo) Palavra 132 – recebe resultado da operação Para as quatro operações propostas, não é necessário realizar quaisquer testes sobre a correção do resultado da operação, ou seja, eventuais "vai-um" e estouros de representação devem ser ignorados. Entretanto, deve ser verificado se o código da operação é um código válido, e indicado isto através da palavra 131: Código 1: indica operação válida (código da operação está entre 01 e 04) Código 255: indica operação inválida (código da operação é menor que 01 ou maior que 04) No caso de operação inválida, deve ser devolvido o valor zero como resultado da operação. Os valores das posições de memória 128 a 130, que recebem dados de entrada, não devem ser alterados pelo programa. Dicas: 1. O simulador Neander não possui operação de multiplicação. Entretanto, uma multiplicação pode ser transformada em uma série de somas sucessivas, e uma multiplicação por uma constante porde ser transformada em uma quantidade constante de somas. 3. O simulador Neander não possui operação de potenciação. Entretanto, uma potenciação pode ser transformada em uma série de multiplicação sucessivas. Os trabalhos serão corrigidos de forma automática, com cerca de 20 grupos de valores diferentes. Portanto, devem ser observadas rigorosamente as seguintes especificações: o código do programa deve iniciar na