Como usar: Conversor de Bases
- Digite um número em qualquer campo: decimal, hexadecimal, binário, octal ou na base personalizada (2–36). Todos os outros campos são atualizados enquanto você digita.
- Números negativos funcionam com um sinal de menos no início. Números muito grandes são tratados com precisão usando BigInt.
- Escolha 8, 16, 32 ou 64 bits na visualização de bits para ver a representação em complemento de dois, com os valores com e sem sinal. Clique nos bits para invertê-los.
- Use o painel Texto ↔ hex ↔ binário para codificar texto em bytes UTF-8 ou decodificar hex/binário de volta para texto.
O que é uma base numérica?
Uma base numérica (ou radix) é a quantidade de dígitos distintos que um sistema de numeração posicional usa. O decimal usa dez (0–9), o binário dois (0–1), o octal oito (0–7) e o hexadecimal dezesseis (0–9 e A–F). Cada posição vale a base elevada a uma potência, então o hex 2F significa 2 × 16 + 15 = 47, e o binário 101 significa 1 × 4 + 0 × 2 + 1 = 5. Bases até 36 usam as letras A–Z como dígitos, e é assim que IDs curtos e encurtadores de URL conseguem representar números grandes em poucos caracteres.
Como converter entre bases
Para decimal: multiplique cada dígito pelo seu valor posicional e some tudo: o binário 1101 = 8 + 4 + 0 + 1 = 13. A partir do decimal: divida repetidamente pela base de destino e leia os restos de baixo para cima: 13 ÷ 2 = 6 r1, 6 ÷ 2 = 3 r0, 3 ÷ 2 = 1 r1, 1 ÷ 2 = 0 r1 → 1101. Binário e hex se convertem diretamente porque um dígito hex equivale exatamente a quatro bits: 1111 1010 = FA. O octal corresponde a grupos de três bits, por isso as permissões do Unix como 755 são escritas em octal (111 101 101 = rwx r-x r-x).
| Decimal | Binário | Octal | Hex |
|---|---|---|---|
| 10 | 1010 | 12 | A |
| 255 | 1111 1111 | 377 | FF |
| 1024 | 100 0000 0000 | 2000 | 400 |
| 65535 | 1111 1111 1111 1111 | 177777 | FFFF |
Complemento de dois e inteiros com sinal
Computadores armazenam inteiros negativos em complemento de dois: inverta todos os bits do valor positivo e some um. Em 8 bits, 5 é 00000101 e −5 é 11111011 (hex FB, que equivale a 251 se lido como sem sinal). O bit mais alto funciona como bit de sinal, então um inteiro com sinal de 8 bits vai de −128 a 127, o de 16 bits de −32.768 a 32.767, o de 32 bits de −2.147.483.648 a 2.147.483.647, e o de 64 bits até cerca de ±9,22 × 1018. Valores fora desse intervalo dão a volta, o clássico estouro de inteiro (integer overflow). A visualização de bits acima mostra as duas interpretações dos mesmos bits.
Números grandes e JavaScript
Os números comuns do JavaScript são floats de 64 bits e perdem precisão acima de 253 − 1 (9.007.199.254.740.991). Este conversor usa BigInt, então IDs de 64 bits, hashes e valores enormes são convertidos com exatidão. Para codificar bytes como texto em vez de números, veja o Codificador Base64; para códigos de cor como #4F46E5, o Conversor de Cores transforma hex em RGB e HSL.
Também pesquisado como: conversor binário, hex para decimal, decimal para binário, binário para decimal, conversor hexadecimal, conversor octal, conversor de base numérica, complemento de dois.
Ferramentas que combinam com: Conversor de Bases
- Gerador de Hash — Calcule hashes MD5 e SHA de qualquer texto ou arquivo na hora, crie assinaturas HMAC e cole um checksum esperado para verificar um download.
- Conversor de unidades — Converta entre unidades métricas, imperiais e técnicas em dez categorias — com um conversor bidirecional e uma tabela que mostra todas as unidades de uma vez só.
- Codificar / Decodificar URL — Codifique textos com percent-encoding para usar com segurança em URLs, decodifique strings codificadas de volta para texto legível e separe qualquer URL em suas partes e parâmetros de query.
- Conversor de algarismos romanos — Converte qualquer número de 1 a 3.999.999 em algarismos romanos — ou transforma algarismos romanos de volta em números — com uma explicação detalhada de cada símbolo.
Perguntas frequentes
Como converto binário para decimal?
10110 = 16 + 0 + 4 + 2 + 0 = 22. Ou cole o valor no campo Binário acima.Como converto hex para decimal?
1F4 = 1 × 256 + 15 × 16 + 4 = 500.O que é complemento de dois?
Por que −1 aparece como FFFFFFFF?
FFFFFFFF em hex ou 4.294.967.295 quando interpretado como sem sinal.Como converto texto para binário?
01000001. Caracteres não ASCII, como “é”, usam dois ou mais bytes.