Arquitetura Neander
Em Fundamentos de Arquitetura de Computadores, de Raul F. Weber, a máquina Neander é apresentada como uma arquitetura rudimentar com base em acumulador, utilizada para fins didáticos em atividades acadêmicas. As características originais do processador Neander englobam:
Largura de dados e endereços de 8 bits;
Representação de dados em complemento a dois;
Um acumulador de 8 bits;
Um apontador de instruções de 8 bits;
Um registrador de código condicional com 2 bits: negativo e zero
Em contrapartida, com o intuito de diminuir algumas limitações e ampliar o potencial do processamento para exercícios didáticos, foi necessário expandir o conjunto de instruções da máquina original, incluindo detalhes em sua arquitetura. Com isso, a arquitetura estendida, denominada Neander-X passou a incorporar:
Carregamento de dados diretamente no acumulador;
Novo modo indireto de endereçamento, abrindo espaço para exercitar noções de indexação e ponteiros;
Operadores de entrada e saída de dados
CONJUNTO DE INSTRUÇÕES
Na arquitetura do Neander-X existe um conjunto de instruções que faz a interação e executa operações. Essas instruções podem ter um ou dois bytes.
Nas instruções com apenas um byte, o código da operação está contido nos 4 bits mais significativos, enquanto as instruções de dois bytes são referentes a um dado ou um operando direto na memória. Vale ressaltar que, nesse caso, os 4 bits de mais baixa ordem são reservados e destinados a futuras expansões.
A seguir, a tabela abaixo informa os códigos e suas respectivas instruções e descrições:
Cód.
Instrução
Descrição
0000
NOP
Nenhuma operação
0001
STA ender
Armazena acumulador (store)
0010
LDA ender
Carrega acumulador (load)
0011
ADD ender
Soma
0100
OR ender
Operação lógica “ou”
0101
AND ender
Operação lógica “e”
0110
NOT ender
Negação
0111
SUB ender
Subtração
1000
JMP ender
Desvio incondicional (jump)
1001
JN ender
Desvio condicional