Clique sobre os objetivos listados abaixo para navegar até o conteúdo desejado.

  1. Transferência
  2. LDI
  3. LDIR
  4. LDD
  5. LDDR

As instruções de transferência têm o objetivo de mover dados de um endereço de origem para um endereço de destino.

Essa origem e destino são predefinidos como os pares HL e DE respectivamente e o par BC é utilizado como contador.

As flags H,C e P/V contidas no registrador F são atualizadas de acordo com o comportamento de cada instrução desse grupo.

Notação utilizada:
  1. () - conteúdo de memória
  2. <- atribuição

A instrução LDI transfere ou copia um byte apontado por HL para o destino apontado por DE. Ambos pares de registradores são incrementados enquanto o par contador BC é decrementado.

Operação:
(DE) <- (HL)
DE <- DE + 1
HL <- HL + 1
BC <- BC - 1
Sintaxe
LDI
Operandos/ME:
-
F(Flags)
S: -
Z: - 
H: 0
P/V: 1 se BC – 1 != 0; caso contrário 0.
N: 0
C: -
Exemplo:
LD DE,$F100
LD HL, $0100
LD BC,#$0100
LDI

A instrução LDIR é semelhante à instrução LDI, exceto por repetir a instrução enquanto o contador BC for diferente de zero.

Operação:
(DE) <- (HL)
DE <- DE + 1
HL <- HL + 1
BC <- BC – 1
Se BC != 0
     PC <- PC - 1
Se BC = 0
     Continua fluxo
Sintaxe
LDIR
Operandos/ME:
-
F(Flags)
S: -
Z: - 
H: 0
P/V: 1 se BC – 1 != 0; caso contrário 0.
N: 0
C: -
Exemplo:
LD DE,$F100
LD HL, $0100
LD BC,#$0100
LDIR

A instrução LDD transfere ou copia um byte apontado por HL para o destino apontado por DE. Os pares HL, DE e o contador BC são decrementados.

Operação:
(DE) <- (HL)
DE <- DE - 1
HL <- HL - 1
BC <- BC – 1
Sintaxe
LDD
Operandos/ME:
-
F(Flags)
S: -
Z: - 
H: 0
P/V: 1 se BC – 1 != 0; caso contrário 0.
N: 0
C: -
Exemplo:
LD DE,$F2FF
LD HL, $01FF
LD BC,#$00FF

A instrução LDIR é semelhante à instrução LDD exceto por repetir a instrução enquanto o contador BC for diferente de zero.

Operação: destino <- origem
(DE) <- (HL)
DE <- DE - 1
HL <- HL - 1
BC <- BC – 1
Se BC != 0
     PC <- PC - 1
Se BC = 0
     continua
Sintaxe
LDD
Operandos/ME:
-
F(Flags)
S: -
Z: - 
H: 0
P/V: 1 se BC – 1 != 0; caso contrário 0.
N: 0
C: -
Exemplo:
LD DE,$F2FF
LD HL, $01FF
LD BC,#$00FF
LDDR
  1. 14/08/2026 - revisão 1 - Ajustes: título LDD e outros pontuais
  2. 03/08/2026 - versão inicial: LDI, LDIR, LDD e LDDR