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, porém o uso dos registradores em pares permite armazenar dados em 16-bits, não só endereços de memória.

A pilha do 8080 armazena apenas valores de 16-bits. Em algumas instruções, os registradores A e F são salvos e recuperados em par.

A aritmética de 16-bits no 8080 é feita pelas instruções DAD e DCR, por exemplo, tendo pares de registradores como operando da instrução.

A partir do dados de tamanho 8-bits/16-bits, os seguintes tipos de dados derivados podem ser declarados e utilizados de acordo com a necessidade do software:

  1. Array: sequência de bytes
  2. String: sequência de caracteres ascii
  3. Struct: contém bytes, strings, ponteiros e outros
  4. Objeto: contém bytes, strings, ponteiros e outros
Ex:
array: .db $00,$01,$02
str: .asciiz "uma string"
struct:
.db $01
.dw $FFFF

Assim como em vários processadores, existe a necessidade de manipular dados sinalizados. Em um valor de 8-bits, o bit 7 é o local ou bit que indica onde a sinalização é identificada.

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 contendo o 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. 19/01/2026 - revisão 4 - Adição de outros tipos de dados; Ajustes: tab. flags
  2. 12/12/2024 - revisão 3 - Ajustes pontuais
  3. 09/19/2023 - revisão 2 - Correção em erros gramaticais
  4. 04/10/2023 - revisão 1 - adição de links, correção em layout e navegação
  5. 28/04/2023 - versão inicial