Entendendo bases numéricas
Uma base numérica (ou radix) define quantos dígitos únicos são usados para representar números num sistema posicional.
Bases comuns:
- Binário (Base 2): Usa os algarismos 0 e 1. É a base da representação digital.
- Octal (base 8): Usa os dígitos 0-7. Ainda aparece em alguns contextos de computação.
- Decimal (base 10): Usa os algarismos 0-9. É o sistema habitual no cálculo quotidiano.
- Hexadecimal (base 16): Usa 0-9 e A-F. É comum em programação.
Exemplo: O número 42 em decimal equivale a 101010 em binário, 2A em hexadecimal e 52 em octal.
Conversões numéricas comuns
Aqui estão algumas conversões comuns entre diferentes bases:
| Decimal | Binário | Octal | Hexadecimal |
|---|---|---|---|
| 1 | 1 | 1 | 1 |
| 10 | 1010 | 12 | A |
| 16 | 10000 | 20 | 10 |
| 42 | 101010 | 52 | 2A |
| 255 | 11111111 | 377 | FF |
Bases estendidas (32, 36, 58, 62)
Este conversor numérico usa sempre o alfabeto 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz e, para cada base, considera apenas os primeiros N símbolos. Por isso, estas bases são sistemas posicionais genéricos, não codificações de bytes com alfabetos próprios.
- Base 32: Usa
0-9eA-V; não é o alfabeto Base32 da RFC 4648 (A-Ze2-7). - Base 36: Usa
0-9eA-Z. - Base 58: Usa
0-9,A-Zea-v, incluindo carateres visualmente semelhantes; não é o alfabeto Base58 do Bitcoin nem Base58Check. - Base 62: Usa o alfabeto completo
0-9,A-Zea-z.
Para codificar bytes segundo uma norma específica, use os codificadores Base32 ou Base58 dedicados em vez deste conversor de números inteiros.