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

  1. Tipos de dados
  2. Sinalização

Por ser um processador 8-bits, o tamanho máximo de dados processado possui o mesmo tamanho 8-bits. Os registradores A,X e Y armazenam valores de 8-bits bem como registradores mapeados em memória também possuem o mesmo tamanho. A pilha do 6502 armazena valores de 8-bits, exceto algumas instruções que armazenam valores 16-bits como na instrução JSR.

A pilha do 6502 armazena somente valores de tamanho 8-bits, endereços de 16-bits são divididos em 2 bytes para que sejam são salvos.

Os registradores A,X e Y armazenam valores de 8-bits bem como registradores mapeados em memória também podem o mesmo tamanho.

Tab. 1: Dado 16-bits
Byte 1 Byte 2
AA BB
Tab. 2: Dado 8-bits
Byte 1
AA

O registrador PC armazena dados 16-Bits, exceto pelas instruções de controle de fluxo, nenhum outra instrução operam sobre esse registrador diretamente. Sua alteração pode ser feita de acessando endereços de retorno na pilha.

Assim como em vários processadores, existe a necessidade de manipular dados sinalizados. O bit 7 é o local que indica que um valor possui a sinalização. Tanto para valores processador no acumulador A quanto os imediatos utilizados no modo de endereçamento Relativo.

Tab. 1: Sinalização
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
1 - - - - - - -

Um valor armazenado no registrador A que possui o bit 7 com valor 1, será visto pelo processador como um valor negativo. Quando o bit 7 possuir o valor 0, será visto como um valor positivo. Essa situação pode ser vista pela flag N(Negative)

Ex:
$80 / -128 / 10000000b
$7F / 127 / 01111111b
Onde:
b: binário
$: hexadecimal
  1. 12/03/2025 - revisão 3 - Remoção de parágrafo duplicado sobre pilha; Correções pontuais
  2. 11/09/2024 - revisão 2 - Adição de tabelas de dados 8/16-bits
  3. 04/10/2023 - revisão 1 - Correção em de links, navegação e erros gramaticais
  4. 28/04/2023 - versão inicial