====== Conjunto de instruções do AHMES ====== ^ Código ^ Instrução ^ Operação ^ | 0000 xxxx | NOP | Nenhuma operação | | 0001 xxxx | STA end | Armazena acumulador no endereço "end" da memória | | 0010 xxxx | LDA end | Carrega o acumulador com o conteúdo do endereço "end" da memória | | 0011 xxxx | ADD end | Soma o conteúdo do endereço "end" da memória ao acumulador | | 0100 xxxx | OR end | Efetua operação lógica "OU" do conteúdo do endereço "end" da memória ao acumulador | | 0101 xxxx | AND end | Efetua operação lógica "E" do conteúdo do endereço "end" da memória ao acumulador | | 0110 xxxx | NOT | Inverte todos os bits do acumulador | | 0111 xxxx | SUB end | Subtrai o conteúdo do endereço "end" da memória do acumulador | | 1000 xxxx | JMP end | Desvio incondicional para o endereço "end" da memória | | 1001 00xx | JN end | Desvio condicional, se "N=1", para o endereço "end" da memória | | 1001 01xx | JP end | Desvio condicional, se "N=0", para o endereço "end" da memória | | 1001 10xx | JV end | Desvio condicional, se "V=1", para o endereço "end" da memória | | 1001 11xx | JNV end | Desvio condicional, se "V=0", para o endereço "end" da memória | | 1010 00xx | JZ end | Desvio condicional, se "Z=1", para o endereço "end" da memória | | 1010 01xx | JNZ end | Desvio condicional, se "Z=0", para o endereço "end" da memória | | 1011 00xx | JC end | Desvio condicional, se "C=1", para o endereço "end" da memória | | 1011 01xx | JNC end | Desvio condicional, se "C=0", para o endereço "end" da memória | | 1011 10xx | JB end | Desvio condicional, se "B=1", para o endereço "end" da memória | | 1011 11xx | JNB end | Desvio condicional, se "B=0", para o endereço "end" da memória | | 1110 xx00 | SHR | Desloca o acumulador para a direita; o bit 7 do acumulador recebe 0; o Carry recebe o bit 0 do acumulador | | 1110 xx01 | SHL | Desloca o acumulador para a esquerda, o bit 0 do acumulador recebe 0; o Carry recebe o bit 7 do acumulador | | 1110 xx00 | ROR | Gira o acumulador para a direita; o bit 7 do acumulador recebe o Carry; o Carry recebe o bit 0 do acumulador | | 1110 xx01 | ROL | Gira o acumulador para a esquerda, o bit 0 do acumulador recebe o Carry; o Carry recebe o bit 7 do acumulador | | 1111 xxxx | HLT | Para o ciclo de busca-decodificação-execução |