Objetivos
Tipos de Dados
Por ser um processador 8-bits, o tamanho máximo de dado processado possui o mesmo tamanho de 8-bits.
Os registradores A,X e Y armazenam valores de 8-bits bem como registradores mapeados em memória.
Tab. 1: Dado 8-bits
| Byte 1 |
| AA |
A pilha do 6502 armazena somente valores de tamanho 8-bits, endereços de 16-bits são divididos
em 2 bytes quando armazenados. Ver instrução
Intruções > Controle de Fluxo > JSR.
Tab. 2: Dado 16-bits
| Byte 1 |
Byte 2 |
| AA |
BB |
A partir do dados de tamanho 8-bits e 16-bits, os seguintes tipos de dados derivados podem ser
declarados e utilizados de acordo com a necessidade do software:
Tab. 1: array de bytes
| RAM |
0100 |
0101 |
0102 |
(...) |
| Valor |
00h |
01h |
10h |
aah |
Tab. 2: array de words
| RAM |
0100 |
0102 |
(...) |
| Valor |
3412h |
7856h |
(...) |
Tab. 3: string ascii
| 0 |
1 |
2 |
(...) |
| 'o' |
'l' |
'a' |
(...) |
Os dados mostrados acima são declarados no código utilizando diretivas específicas fornecidas
pelo assembler em que informamos na linha de código qual o tamanho do dado que deve ser usado.
Tipos de dados mais complexos como structs e strings multibytes são declarados utilizando como
base os tipos de dados vistos fundamentais byte e word.
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
Histórico de atualizações
- 09/03/2026 - revisão 4 - Ajustes: pontuais; Adição: lista de dados derivados
- 12/03/2025 - revisão 3 - Remoção de parágrafo duplicado sobre pilha; Correções pontuais
- 11/09/2024 - revisão 2 - Adição de tabelas de dados 8/16-bits
- 04/10/2023 - revisão 1 - Correção em de links, navegação e erros gramaticais
- 28/04/2023 - versão inicial
Os cursos oferecidos nesta página são cursos fornecidos por parceiros. Ao comprar um curso clicando
em seu banner, você está ajudando a manter o projeto TutorialDev vivo. Os sites dos cursos parceiros utilizam cookies.