O microprocessador 8086 possui um vasto conjunto de instruções que permite realizar diversas operações. Aqui estão algumas das instruções comumente usadas:
1. Instruções para movimentação de dados:
- MOV:Esta instrução é usada para mover dados entre registradores ou entre um registrador e um local de memória.
Exemplo:
- MOV AL, 05H; Mova o valor hexadecimal 05 para o registro AL.
2. Instruções Aritméticas:
- ADD:Esta instrução adiciona o conteúdo de um registrador ou local de memória ao conteúdo do acumulador.
Exemplo:
- ADICIONAR AL, BL; Adicione o conteúdo do registro BL ao registro AL.
- SUB:Esta instrução subtrai o conteúdo de um registrador ou posição de memória do conteúdo do acumulador.
Exemplo:
- SUBAL, 10; Subtraia 10 do registrador AL.
3. Instruções Lógicas:
- AND:Esta instrução executa uma operação lógica AND entre o conteúdo de um registrador ou local de memória e o conteúdo do acumulador.
Exemplo:
- E AL, 0FH; Execute uma operação lógica AND entre AL e 0FH.
- OR:Esta instrução executa uma operação lógica OR entre o conteúdo de um registrador ou local de memória e o conteúdo do acumulador.
Exemplo:
- OU AL, 34H; Execute uma operação lógica OR entre AL e 34H.
4. Instruções de transferência de controle:
- JMP:Esta instrução transfere incondicionalmente a execução do programa para um endereço de memória especificado.
Exemplo:
-JMP 1000H; Salte para o local de memória 1000H.
- JZ:Esta instrução transfere a execução do programa para um endereço de memória especificado se o flag zero estiver definido.
Exemplo:
-JZ 2000H; Salte para o local de memória 2000H se o sinalizador zero estiver definido.
5. Instruções para manipulação de cordas:
- REP:Esta instrução repete uma instrução de manipulação de string um determinado número de vezes.
Exemplo:
- REP MOVSW; Repita a instrução MOVSW um determinado número de vezes.
6. Instruções de entrada/saída:
- IN:Esta instrução lê dados de uma porta de E/S especificada e os armazena em um registrador.
Exemplo:
- INAL, 10H; Leia os dados da porta de E/S 10H e armazene-os no registrador AL.
- OUT:Esta instrução escreve dados de um registrador em uma porta de E/S especificada.
Exemplo:
- SAÍDA 20H, AL; Grave dados do registrador AL na porta de E/S 20H.
7. Instruções de controle do processador:
- HLT:Esta instrução interrompe o processador e interrompe a execução.
Exemplo:
- ELH; Pare o processador.
Estas instruções são apenas alguns exemplos do extenso conjunto de instruções do microprocessador 8086. Cada instrução tem sua sintaxe, operandos e funcionalidade específicos. Os programadores de linguagem assembly podem utilizar essas instruções para criar vários programas para diferentes aplicações.