Neander
Ensaios: Neander. Pesquise 862.000+ trabalhos acadêmicosPor: daiaa__ • 23/4/2014 • 453 Palavras (2 Páginas) • 751 Visualizações
Largura de dados e endereços de 8 bits
Dados representados em complemento a dois
1 acumulador de 8 bits (AC)
1 apontador de programa de 8 bits (PC)
1 registrador de estado com 2 códigos de condição: negativo (N) e zero (Z)
Conjunto de instruções do Neander[editar | editar código-fonte]
Código Instrução Descrição
0000 NOP nenhuma operação
0001 STA end MEM(end) ← AC
0010 LDA end AC← MEM(end)
0011 ADD end AC← MEM(end) + AC
0100 OR end AC← MEM(end) OR AC
0101 AND end AC← MEM(end) AND AC
0110 NOT AC← NOT AC
1000 JMP end PC← end
1001 JN end IF N=1 THEN PC ← end
1010 JZ end IF Z=1 THEN PC ← end
1111 HLT término de execução - (halt)
Ahmes[editar | editar código-fonte]
Ahmes ou WAhmes(em sua versão Win32) é uma ferramenta que simula uma máquina hipotética, para possibilitar a implementação de rotinas aritméticas simples, como adição e subtração, e a programação de rotinas mais complexas como multiplicação e divisão. É compatível com o Neander, mas apresenta um conjunto maior de instruções para facilitar a execução de operações aritméticas.
Características[editar | editar código-fonte]
Largura de dados e endereços de 8 bits
Dados representados em complemento a dois
1 acumulador de 8 bits (AC)
1 apontador de programa de 8 bits (PC)
1 registrador de estado com 5 códigos de condição: negativo (N), zero (Z), carry out (vai-um) (C), borrow out (empresta-um) (B) e overflow (estouro) (V).
Modos de endereçamento[editar | editar código-fonte]
O Ahmes possui um único modo de endereçamento: o modo direto. Neste modo, a palavra seguinte ao código da instrução contém, nas instruções de manipulação de dados, o endereço do operando. Nas instruções de desvio, o endereço contido na instrução corresponde ao endereço para onde o apontador de programa será endereçado.
Conjunto de instruções do Ahmes[editar | editar código-fonte]
Código Binário Instrução Descrição Comentário
0000 0000 NOP nenhuma operação nenhuma operação
0001 0000 STA end MEM(end) ← AC armazena acumulador no endereço de memória
0010 0000 LDA end AC← MEM(end) carrega acumulador com conteúdo da memória
0011 0000 ADD end AC← MEM(end) + AC soma acumulador com conteúdo da memória
0100 0000 OR end AC←
...