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

  1. Instruções de movimentação
  2. Instrução LDA
  3. Instrução LDX
  4. Instrução LDY
  5. Instrução STA
  6. Instrução STX
  7. Instrução STY

Com as instruções de movimentação podemos carregar dados nos registradores A, X e Y e em memória. Apenas as flags N e Z são afetadas por estas instruções, exceto instruções de escrita em memória, e esse tipo de instrução utiliza quase todos os modos de endereçamento.

Notação utilizada
M Endereço de memória
<- Atribuição
; Comentário
Flags
a Alterada de acordo com resultado
- Não sofre alteração
0 Sempre zero
1 Sempre um

Mais informações sobre os registradores e flags podem ser vistas em Registradores.

A instrução LDA carrega um byte, imediato ou em memória, no registrador A. As flags N e Z são atualizadas de acordo com o valor.

Operação
A <- valor
Endereçamento:
Imediato LDA #$NN
Página Zero LDA $NN
Página Zero,X LDA $NN,X
Absoluto LDA $NNNN
Absoluto,X LDA $NNNN,X
Absoluto,Y LDA $NNNN,Y
Indireto,X LDA ($NN,X)
Indireto,Y LDA ($NN),Y
F(Flags)
N: a
V: -
B: - 
D: -
Z: a
C:-
Exemplo:
LDA #$01	;Carrega A com valor imediato
;...
LDA $00	;Carrega A com valor contido em $0000.

A instrução LDX carrega um byte, imediato ou em memória, no registrador X. As flags N e C são atualizadas de acordo com o valor.

Operação
X <- M
Endereçamento:
Imediato LDX #$NN
Página Zero LDX $NN
Absoluto LDX $NNNN
Absoluto,Y LDX $NNNN,Y
Pagina Zero,Y LDX $NN,Y
F(Flags)
N: a
V: -
B: - 
D: -
Z: a
C:-
Exemplo:
LDX #$01	;Carrega X com valor imediato
;...
LDX $00	;Carrega X com valor contido em $0000.

A instrução LDY carrega um byte, imediato ou em memória, no registrador Y. As flags N e C são atualizadas de acordo com o valor.

Operação
Y <- M
Endereçamento:
Imediato LDY #$NN
Página Zero LDY $NN
Absoluto LDY $NNNN
Absoluto,X LDY $NNNN,X
Página Zero,X LDY $NN,X
F(Flags)
N: a
V: -
B: - 
D: -
Z: a
C:-
Exemplo:
LDY #$01	;Carrega Y com valor imediato
;...
LDY $00	;Carrega Y com valor contido em $0000.

A instrução STA armazena ou transfere o valor contido no registrador A em um local de memória. Nenhuma flag é alterada.

Operação
M <- A
Endereçamento:
Página Zero STA $NN
Página Zero,X STA $NN,X
Absoluto STA $NNNN
Absoluto,X STA $NNNN,X
Absoluto,Y STA $NNNN,Y
Indireto,X STA ($NN,X)
Indireto,Y STA ($NN),Y
F(Flags)
N: a
V: -
B: - 
D: -
Z: a
C:-
Exemplo:
LDA #$FF
STA $00	;Armazena A em $0000.

A instrução STX armazena ou transfere o valor contido no registrador em um local de memória. Nenhuma flag é alterada.

Operação
M <- X
Endereçamento:
Página Zero STX $NN
Página Zero,Y STX $NN,Y
Absoluto STX $NNNN
F(Flags)
N: -
V: -
B: - 
D: -
Z: -
C:-
Exemplo:
LDX  #$FF
STX $00	;Armazena X em $0000.

A instrução STX armazena ou transfere um valor contido no registrador em um local de memória. Nenhuma flag é alterada.

Operação
M <- Y
Endereçamento:
Página Zero STY $NN
Página Zero,Y STY $NN,Y
Absoluto STY $NNNN
F(Flags)
N: -
V: -
B: - 
D: -
Z: -
C:-
Exemplo:
LDY #$FF
STY $00	;Armazena Y em $0000.
  1. 12/03/2025 - revisão 3 - correção em título LDX/LDY, flags afetada na intro, STX/STA/STY; Melhorias pontuais
  2. 11/09/2024 - revisão 2 - correção em modos de endereçamento LDX, LDY e adição de flags afetadas
  3. 30/08/2024 - revisão 1 - Correção em links de objetivos
  4. 28/04/2023 - versão inicial