Menu
Coddy logo textTech

Por que Hexadecimal?

Parte da seção Fundamentos do Journey de Assembly da Coddy. Lição 10 de 45.

Agora você já sabe que os computadores usam o sistema binário. Então, por que os programadores de assembly raramente escrevem em binário diretamente?

O problema com o binário:

Os números binários são muito longos. Veja este exemplo:

NúmeroBinário
25511111111
10001111101000
655351111111111111111

Escrever longas sequências de 1s e 0s é lento, propenso a erros e difícil de ler.

A solução: hexadecimal (base 16).

O hexadecimal (ou "hex") usa 16 símbolos:

DigitValue
0-90 to 9
A10
B11
C12
D13
E14
F15

Por que hex é perfeito para computadores:

Um dígito hex representa exatamente 4 bits (metade de um byte).

Bitsdígitos hex necessários
4 bits (nibble)1 dígito hex
8 bits (1 byte)2 dígitos hex
16 bits (2 bytes)4 dígitos hex
32 bits (4 bytes)8 dígitos hex
64 bits (8 bytes)16 dígitos hex

O mesmo número, de três maneiras:

DecimalBinárioHexadecimal
25511111111FF
100011111010003E8
655351111111111111111FFFF

Observe como hex é muito mais curto do que binário.

Onde você verá hex em assembly:

  • Endereços de memória (como 0x7FFF ou 0x402000)
  • Códigos ASCII (como 0x41 para 'A', 0x0a para nova linha)
  • Valores de registradores em depuradores
  • Valores de cores (como 0xFF0000 para vermelho)

Hex é escrito com um prefixo:

PrefixoExemploSignificado
0x0xFFFF em hex (255 em decimal)
$$FFA mesma coisa (usado em alguns assemblers)
hFFhA mesma coisa (estilo mais antigo)

Neste curso, usamos o prefixo 0x: 0x0a, 0x41, 0xFF.

Experimente você mesmo

Esta lição não inclui um desafio de código.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos

Pratique por conta própria: Playground de Assembly