Conversor de bases numéricas (binário, octal, decimal, hexadecimal)

Converte números entre binário, octal, decimal e hexadecimal. Usa BigInt para converter com precisão até mesmo inteiros muito grandes, sem erros de arredondamento.

O que é um conversor de bases numéricas? Entendendo binário, octal, decimal e hexadecimal

Um conversor de bases numéricas permite informar um valor em binário, octal, decimal ou hexadecimal e ver imediatamente o valor equivalente nas outras três bases. Programação, redes e eletrônica exigem constantemente lidar com o mesmo valor em bases diferentes, e a conversão manual fica mais sujeita a erros à medida que o número de dígitos aumenta. Esta ferramenta valida sua entrada e exibe todas as conversões instantaneamente, dispensando uma calculadora separada ou uma tabela de conversão impressa.

O funcionamento da conversão entre bases é simples: toda base representa a mesma quantidade como uma soma de "valor do dígito vezes peso posicional". O número decimal 255 é escrito como 11111111 em binário, 377 em octal e FF em hexadecimal — a notação muda, mas a quantidade representada é sempre a mesma. Esta ferramenta realiza seus cálculos com BigInt (um tipo inteiro de precisão arbitrária) em vez do tipo Number comum do JavaScript, de modo que até mesmo inteiros muito grandes, além de 2^53, são convertidos com total exatidão e sem erros de arredondamento.

Como usar o conversor de bases numéricas

  1. Escolha a base do valor de entrada Selecione se o número que você vai informar está escrito em binário, octal, decimal ou hexadecimal.
  2. Informe o valor Digite apenas os caracteres válidos para a base selecionada. O hexadecimal também aceita as letras de A a F.
  3. Verifique se há caracteres inválidos Se o valor contiver um caractere inválido para a base selecionada, uma mensagem de erro aparece para que você corrija a entrada.
  4. Confira os resultados convertidos Não é preciso clicar em nenhum botão — as representações em binário, octal, decimal e hexadecimal são exibidas automaticamente.
  5. Converta outros valores Ao alterar o valor ou a base selecionada, os resultados são recalculados instantaneamente, permitindo conferir vários números em sequência.

Dicas para aproveitar melhor

  • Ao inserir um valor hexadecimal, não adicione prefixos como `0x`; digite apenas os dígitos (por exemplo, `FF`). Tanto maiúsculas quanto minúsculas são reconhecidas.
  • Esta ferramenta usa BigInt internamente, o que permite converter com precisão inteiros muito grandes (acima de 2^53) que perderiam precisão com o tipo Number do JavaScript.
  • Útil em tarefas comuns de programação, como ler códigos de cor hexadecimais (por exemplo, `#FF0000`) ou verificar representações binárias em operações bit a bit.
  • O octal é comumente usado nas permissões de arquivos de sistemas tipo Unix (por exemplo, `755`). Compará-lo com o decimal e o binário ajuda a entender melhor o significado de cada permissão.

Usos comuns do conversor de bases numéricas

Conferir exercícios e provas de programação

Depois de resolver um exercício de conversão de bases de uma aula de ciência da computação ou de uma prova de certificação, verifique na hora se seu cálculo manual estava correto.

Verificar máscaras de bits e códigos de cor

Converta um código de cor hexadecimal (como `#FF0000`) ou um valor de flag de operações bit a bit para binário e veja exatamente quais bits estão ativados.

Preparar cálculos de endereço de rede e sub-rede

Converta um endereço IP ou uma máscara de sub-rede para binário como primeiro passo para identificar o limite entre a parte de rede e a parte de host.

Entender permissões de arquivos no Unix

Converta um valor de permissão octal como `chmod 755` para binário e veja visualmente como as permissões de leitura, escrita e execução se combinam para cada classe de usuário.

Depurar sistemas que lidam com inteiros grandes

Quando um log ou um dump de memória exibe um valor grande, como um inteiro de 64 bits, em hexadecimal, converta-o para decimal sem erro de arredondamento para ter uma noção intuitiva de sua magnitude.

Glossário de bases numéricas

Binário
Um sistema numérico que representa valores usando apenas os dígitos 0 e 1. Dentro de um computador, esses dois estados costumam corresponder a tensão alta ou baixa, ou a um interruptor ligado ou desligado.
Octal
Um sistema numérico que usa os oito dígitos de 0 a 7. Como três dígitos binários equivalem exatamente a um dígito octal, era comum nos primeiros computadores e ainda é usado nas permissões de arquivos de sistemas tipo Unix.
Decimal
O sistema numérico que usamos no dia a dia, formado pelos dez dígitos de 0 a 9. Esta ferramenta aceita o decimal tanto como base de entrada quanto como uma das saídas convertidas.
Hexadecimal
Um sistema numérico que usa dezesseis símbolos, de 0 a 9 e de A a F. Como quatro dígitos binários equivalem exatamente a um dígito hexadecimal, é amplamente usado para representar endereços de memória, códigos de cor e outros valores internos do computador de forma compacta e legível.
Base (radix)
O número de dígitos distintos que um sistema numérico usa para uma única posição. O binário tem base 2, o octal base 8, o decimal base 10 e o hexadecimal base 16.
BigInt
Um tipo de dado do JavaScript que representa inteiros sem limite no número de dígitos. Os valores Number comuns perdem precisão além de 2^53, mas o BigInt converte números de qualquer tamanho com total exatidão.
Peso posicional (valor de posição)
A contribuição que um dígito dá ao valor total de acordo com sua posição. No decimal, a casa das centenas tem peso 100; a conversão entre bases consiste em multiplicar cada dígito pelo seu peso posicional e somar os resultados.
Máscara de bits
Um padrão binário usado para isolar ou modificar posições específicas de bits dentro de um valor. Converter um valor hexadecimal ou um código de cor para binário facilita muito ver quais bits individuais estão ativados.

Perguntas frequentes

São todas "bases" diferentes usadas para representar números. O decimal usa 10 dígitos (0-9) e é o sistema que usamos no dia a dia; o binário usa apenas 0 e 1 e é o que os computadores usam internamente; o octal usa de 0 a 7; e o hexadecimal usa de 0 a 9 e de A a F. Octal e hexadecimal são amplamente usados em ciência da computação e eletrônica.

Um único dígito hexadecimal representa exatamente 4 bits (4 dígitos binários), o que permite comprimir dados binários em uma forma muito mais legível para humanos. É amplamente usado em endereços de memória, códigos de cor (`#RRGGBB`), códigos de caracteres e outras situações em que é preciso lidar com sequências de bits internas do computador.

Com uma calculadora comum ou com o tipo Number do JavaScript, inteiros maiores que 2 elevado a 53 (cerca de 9 quatrilhões) podem perder precisão. Esta ferramenta usa BigInt, um tipo inteiro de precisão arbitrária, e por isso converte com exatidão números de qualquer tamanho, sem erros.

O octal é usado principalmente na notação de permissões de arquivos de sistemas tipo Unix (Linux, macOS etc.), como em `chmod 755`. Cada dígito representa uma combinação das permissões de leitura (4), escrita (2) e execução (1), de modo que um único dígito octal expressa de forma concisa as permissões do proprietário, do grupo e de outros usuários.
Tool-kun

Curiosidade — por que os computadores funcionam em binário

Os computadores são baseados em binário (0 e 1) porque os circuitos eletrônicos conseguem distinguir de forma confiável apenas dois estados: "tensão alta/baixa" ou "interruptor ligado/desligado". Construir um circuito capaz de distinguir com precisão dez níveis de tensão diferentes, como exigiria o decimal, seria muito mais sensível a ruído e mais complexo. Por essas razões práticas de engenharia, quase todos os computadores modernos são baseados em binário.

O hexadecimal é tão útil em programação graças a uma propriedade matemática conveniente: quatro dígitos binários (de 0000 a 1111) correspondem exatamente a um dígito hexadecimal (de 0 a F). Um byte (8 bits), por exemplo, pode ser escrito com apenas dois dígitos hexadecimais (`00` a `FF`), comprimindo em um comprimento muito mais legível o que em binário ocuparia oito dígitos.

O octal se popularizou por razões históricas: os primeiros computadores, como o PDP-8 (década de 1960), usavam tamanhos de palavra múltiplos de 3 bits (12 ou 36 bits, por exemplo), o que tornava o octal naturalmente conveniente na época. Quando os computadores passaram a padronizar tamanhos de palavra múltiplos de 4 bits (8, 16 ou 32 bits), o hexadecimal se tornou mais prático que o octal, e hoje continua predominante. Ainda assim, o octal sobrevive em alguns usos, como nas permissões de arquivos do Unix.