>> Tecnologia Eletrônica >  >> Áudio Residencial >> Amplificadores

Instrução INR no 8086/8088: Incremento de Registrador/Memória

Correção: O mnemônico INR é do 8085/Z80, não do 8086/8088. No 8086/8088 (x86), a instrução equivalente é INC. O opcode 04h é ADD AL, imm8 no 8086, não INR.

8086/8088: Instrução INC

Opcode: FE /0 (INC r/m8) ou FF /0 (INC r/m16/32).
Operação: DEST ← DEST + 1 (com/sem sinal, mesmo binário).
Flags Afetadas: AF, OF, PF, SF, ZF. CF inalterada.

Formas e Exemplos

SintaxeEncodingDescrição
INC ALFE C0Incrementa registrador AL de 8 bits
INC AX40Incrementa registrador AX de 16 bits (forma curta, opcode+reg)
INC EAX40 (com prefixo 66h em 16 bits) / FF C0 (modo 32 bits)Incrementa registrador EAX de 32 bits (386+)
INC BYTE PTR [BX+SI]FE 00Incrementa byte em DS:BX+SI
INC WORD PTR [SI+10h]FF 44 10Incrementa word em DS:SI+10h
INC DWORD PTR [BX]FF 07Incrementa dword em DS:BX (386+)

Pontos-Chave

  • Sem operando imediato: INC AL, 5 é inválido. Use ADD AL, 5.
  • Tamanho do operando: Determinado por registrador (AL/AX/EAX) ou tamanho do ponteiro (BYTE/WORD/DWORD PTR).
  • Carry Flag (CF) NÃO afetada: Diferente de ADD, INC não modifica CF. Crítico para loops de precisão múltipla onde CF deve ser preservada.
  • OF set se overflow com sinal (ex.: 7Fh → 80h em 8 bits; 7FFFh → 8000h em 16 bits).
  • Ciclos (8086): Registrador: 2–3; Memória: 15–16 + EA.

8085/Z80: Instrução INR (Para Referência)

  • Mnemônico: INR r (registrador) ou INR M (memória em HL).
  • Opcode: 04 (INR B), 0C (INR C), 14 (INR D), 1C (INR E), 24 (INR H), 2C (INR L), 34 (INR M), 3C (INR A).
  • Operação: r ← r + 1 ou (HL) ← (HL) + 1.
  • Flags: Z, S, P, AC. CY não afetada.
  • Ciclos: 4 (registrador), 10 (memória).

DEC / DCR (Decremento)

Complementar: DEC (8086) / DCR (8085). Mesmo comportamento de flags (CF inalterada).

Resumo: No 8086, use INC (não INR). Incrementa registrador ou memória em 1, atualiza AF/OF/PF/SF/ZF, deixa CF intacta. Opcode 04h é ADD AL, imm8.