Calculadora de Conversão de Base
Converta um número inteiro em binário, octal, decimal e hexadecimal.
Como usar esta calculadora de conversão de base
- Insira o número inteiro
Digite um número inteiro não negativo no campo 'Número inteiro' (ex: 255 ou 4096).
- Leia o valor binário
O resultado em valor binário mostra a representação em base 2.
- Verifique octal e hexadecimal
Revise os resultados em octal e hexadecimal para representações compactas.
- Verifique o decimal
A saída decimal confirma o valor original para conferência.
Como funciona esta calculadora de conversão de base
Esta calculadora de conversão de base recebe um número inteiro em decimal (base 10) e o representa em binário (base 2), octal (base 8) e hexadecimal (base 16) — os quatro sistemas numéricos mais utilizados na computação. Todo sistema de numeração posicional funciona da mesma forma: cada posição de dígito representa uma potência sucessiva da base, e o valor do número é a soma de cada dígito multiplicado pelo seu peso posicional. A conversão entre bases é uma operação fundamental em programação de baixo nível, design de lógica digital, engenharia de redes (endereços MAC e IPv6), códigos de cores em CSS, máscaras de permissão de arquivos no Unix e inspeção de endereços de memória durante a depuração.
Divisão repetida: divida N pela base de destino R, registre o resto, repita com o quociente até chegar a 0 e, em seguida, leia os restos na ordem inversa Converta o número decimal 255 para binário, octal e hexadecimal. Para binário (R = 2): 255 ÷ 2 = 127 resto 1, 127 ÷ 2 = 63 R 1, 63 ÷ 2 = 31 R 1, 31 ÷ 2 = 15 R 1, 15 ÷ 2 = 7 R 1, 7 ÷ 2 = 3 R 1, 3 ÷ 2 = 1 R 1, 1 ÷ 2 = 0 R 1. Lendo os restos de baixo para cima: 11111111. Para octal (R = 8): 255 ÷ 8 = 31 R 7, 31 ÷ 8 = 3 R 7, 3 ÷ 8 = 0 R 3 → 377. Para hexadecimal (R = 16): 255 ÷ 16 = 15 R 15 (F), 15 ÷ 16 = 0 R 15 (F) → FF.
Decimal 4096 → binário 1000000000000, octal 10000, hex 1000. Útil para entender que 4 KiB = 4096 bytes.
Decimal 15 → binário 1111, octal 17, hex F. Cada dígito hexadecimal mapeia exatamente quatro bits; F = 1111.
- ✓ A entrada é um número inteiro não negativo (zero ou inteiro positivo). Valores fracionários e números negativos exigem algoritmos estendidos (ex: complemento de dois para binário com sinal) que estão fora do escopo desta ferramenta.
- ✓ Dígitos hexadecimais acima de 9 são representados usando letras maiúsculas A–F, seguindo a convenção da maioria das linguagens de programação, RFCs e documentação de hardware.
- ✓ Zeros à esquerda são omitidos do resultado. Para representações de largura fixa (ex: binário de 8 ou 32 bits), preencha o resultado manualmente até a largura desejada.
- ✓ A calculadora aceita apenas números inteiros não negativos. Valores acima de 2^53 − 1 (Number.MAX_SAFE_INTEGER do JavaScript) são rejeitados para que os dígitos exibidos permaneçam exatos.
- Cada dígito hexadecimal corresponde a exatamente quatro dígitos binários (bits), e cada dígito octal corresponde a exatamente três bits. Essa relação torna a conversão mental entre hex, octal e binário rápida assim que você memoriza os 16 padrões de nibble.
- Valores comuns que vale a pena memorizar: 0xFF = 255, 0x100 = 256, 0xFFFF = 65535, 0xFFFFFFFF = 4.294.967.295 (o valor máximo de um inteiro de 32 bits sem sinal).
- As permissões de arquivos Unix usam octal: 755 significa rwxr-xr-x (leitura/escrita/execução do proprietário, leitura/execução do grupo e outros). Cada dígito octal codifica três bits de permissão.
- Códigos de cores hexadecimais CSS são três valores de bytes hexadecimais concatenados representando os canais vermelho, verde e azul — ex: #FF8800 é 255 vermelho, 136 verde, 0 azul.
- Teoria do sistema de numeração posicional — Knuth, D. E., The Art of Computer Programming, Volume 2: Seminumerical Algorithms, Seção 4.1
- IEEE 754-2019 — Padrão para Aritmética de Ponto Flutuante (contexto de representação de inteiros)
- RFC 4291 — Arquitetura de Endereçamento IP Versão 6 (notação hexadecimal para IPv6)
Entendendo sistemas numéricos na computação
Todo sistema de numeração posicional utiliza uma base (radix) e atribui a cada dígito um peso baseado em sua posição. No decimal (base 10), o dígito mais à direita representa as unidades, o próximo as dezenas e depois as centenas. O binário (base 2) utiliza apenas 0 e 1, mapeando-se diretamente aos estados ligado/desligado dos transistores. O octal (base 8) agrupa três bits por dígito, e o hexadecimal (base 16) agrupa quatro bits por dígito, utilizando A–F para os valores 10–15. A conversão entre bases utiliza divisões sucessivas: divida o número pela base de destino, registre o resto, repita com o quociente até chegar a zero e, em seguida, leia os restos na ordem inversa. Este algoritmo fundamenta toda conversão de base na programação.
Casos de uso práticos de conversão de base para desenvolvedores
Desenvolvedores utilizam a conversão de base ao inspecionar despejos de memória, depurar operações bitwise, interpretar permissões de arquivos e trabalhar com códigos de cores. As permissões de arquivos Unix (ex: 755) são octais: cada dígito codifica leitura/escrita/execução para proprietário, grupo e outros. Cores hexadecimais em CSS, como #FF8800, são três bytes concatenados em hexadecimal. Endereços IPv6 são escritos em hex. Máscaras de bits e flags são frequentemente expressas em hex para facilitar a leitura (0xFF para uma máscara de byte, 0xFFFF para 16 bits). Ao depurar código de baixo nível ou protocolos de rede, a conversão entre decimal, hex e binário revela rapidamente os padrões de bits subjacentes.
Perguntas frequentes da calculadora de conversão de base
Por que binário, octal e hexadecimal são usados na computação?
O binário mapeia diretamente os estados ligado/desligado dos transistores, sendo a linguagem nativa do hardware. Octal e hexadecimal são formas compactas de binário — um dígito hexadecimal representa exatamente quatro bits e um octal representa três bits — por isso programadores os usam para expressar endereços, máscaras de bits e códigos de cores de forma mais concisa que longas sequências binárias.
Como faço a conversão na direção oposta (ex: hex para decimal)?
Multiplique cada dígito pela potência posicional da base e some os resultados. Por exemplo, hex 1A3 = 1×16² + 10×16¹ + 3×16⁰ = 256 + 160 + 3 = 419 em decimal.
O que acontece com números muito grandes?
A calculadora aceita apenas valores até o limite de inteiro seguro do JavaScript: 2^53 − 1 (9.007.199.254.740.991). Números maiores são rejeitados pois podem perder os dígitos menos significativos no navegador.
Posso converter números negativos ou frações?
Esta ferramenta lida com números inteiros não negativos. Inteiros negativos na computação são tipicamente representados usando complemento de dois em uma largura de bits fixa, e valores fracionários usam a codificação de ponto flutuante IEEE 754 — ambos exigem parâmetros adicionais que esta calculadora não coleta.
Por que o prefixo 0x aparece no código, mas não no resultado?
O prefixo 0x (e 0b para binário, 0o para octal) é uma sintaxe literal específica da linguagem que informa ao compilador ou interpretador qual base esperar. A calculadora exibe a sequência bruta de dígitos sem prefixo para que possa ser usada em qualquer contexto.