Também disponível em: English · Español · Français · العربية
Tradutor binário: converta texto em binário, hex e decimal
Converte texto para binário e decodifica de volta, byte a byte, sem enviar nada para servidor nenhum.
O que é um tradutor binário
Um tradutor binário pega um texto e mostra a sequência de bytes que está por trás dele — em binário, mas também em hexadecimal ou decimal, se você preferir enxergar os mesmos bytes de outro jeito. E faz o caminho inverso: recebe esses valores e devolve o texto original. Não tem criptografia nem nada escondido aqui: qualquer pessoa com a tabela certa reconstrói o texto, porque a conversão segue uma regra fixa, não um segredo.
Essa ferramenta serve para quem está estudando como computadores representam caracteres, para quem precisa depurar um payload que chegou como sequência de bytes, ou simplesmente para quem quer ver a própria frase virando 0 e 1. O detalhe que a maioria das ferramentas do gênero pula — e que esta não pula — é que binário sozinho não quer dizer nada até alguém decidir qual codificação está sendo usada.
Como usar
- Escolha o modo. Clique em Texto para binário para converter o que você escrever, ou em Binário para texto para fazer o caminho inverso a partir de valores já convertidos.
- Escolha a base numérica. Binário, Hexadecimal ou Decimal representam os mesmos bytes de formas diferentes. Ao codificar, marque Separar os bytes com espaços se quiser um espaço entre cada byte — em decimal essa caixa fica travada e marcada, porque sem separador os números não teriam como ser lidos de volta.
- Digite ou cole o conteúdo e copie o resultado. A conversão acontece a cada tecla digitada. No modo Texto para binário, a tabela de detalhamento por byte mostra caractere por caractere; no fim, o botão Copiar leva o resultado para a área de transferência.
Binário de quê, afinal
A pergunta que a maioria dos tradutores binários evita é «binário do quê». Um texto não vira uma sequência única de 0 e 1 sozinho — alguém precisa escolher uma codificação primeiro, e codificações diferentes produzem respostas diferentes para a mesma letra. Esta ferramenta converte via UTF-8, a codificação que domina a web hoje, e mostra isso na tabela de detalhamento em vez de esconder a escolha.
Os números batem com o que o UTF-8 realmente faz: A ocupa um byte, 01000001. É já custa dois — 11000011 10101001 — porque tem acento. O emoji de joinha usa quatro bytes, 11110000 10011111 10010001 10001101, e a bandeira do Brasil usa oito bytes para representar dois pontos de código, as letras regionais que juntas o sistema desenha como uma bandeira. O símbolo do euro fica em três bytes. E convém lembrar: nem sempre um caractere é uma unidade confiável, nem para o próprio JavaScript — o .length desse mesmo emoji retorna 2, o que mostra que nenhuma contagem ingênua bate com o que de fato foi gravado em bytes.
O motivo de tanta ferramenta escapar dessa pergunta é que, para os 128 primeiros pontos de código, o UTF-8 é byte a byte idêntico ao ASCII — conferido um por um, nos 128. Um texto em inglês sem acento converte igual em qualquer codificação, então a diferença nunca aparece. Em português ela aparece já na primeira frase: ã, õ e ç custam dois bytes cada. É por isso que a contagem de caracteres e a contagem de bytes desta página raramente batem — e por isso a linha de contagem mostra as duas.
Três bases, uma decodificação rigorosa
O mesmo «Hi» aparece como 01001000 01101001 em binário, 48 69 em hexadecimal e 72 105 em decimal — três jeitos de escrever os mesmos dois bytes. Binário e hexadecimal têm largura fixa, 8 dígitos e 2 respectivamente, então dá para colar tudo junto sem separador que ainda dá para recortar em grupos. Decimal não: os valores variam de 1 a 3 dígitos, e 72105 não tem uma leitura única de volta. Por isso o separador em decimal é obrigatório e a caixa fica travada. Essa equivalência entre as bases foi conferida com 14 amostras de texto — incluindo emoji, árabe, japonês, tabulação e quebra de linha — passando pelas três bases, com e sem separador: todas voltaram exatas.
Na decodificação, grupos já separados por espaço são preenchidos à esquerda e lidos sem ambiguidade: «1000001 1000010» vira AB porque o espaço já diz onde um byte termina e o outro começa. Mas uma sequência solta de 7 bits sem separador, um «1000001» sozinho, é recusada em vez de adivinhada — podia ser um A de 7 bits ou podia ser um byte de 8 bits com o primeiro dígito faltando, e completar esse palpite em silêncio é justamente como ferramenta corrompe dado sem avisar.
Quatro erros diferentes geram quatro mensagens diferentes: um dígito que não existe na base escolhida, um grupo com o comprimento errado, um valor acima de 255 que estoura um byte, e uma sequência de bytes que, decodificada, não forma UTF-8 válido. Os limites também são claros: isto converte texto, não arquivo — não transforma um PNG em binário nem devolve um arquivo binário como algo legível. Ao decodificar, os bytes passam por um decodificador UTF-8 estrito, então uma sequência que não é texto — código de máquina, algo comprimido, uma imagem — é reportada como tal em vez de virar caractere quebrado na tela. E «binário», aqui, é só o valor dos bytes atrás do texto: não é o código de máquina que um processador executa, nem uma forma de esconder nada, já que qualquer um converte de volta.
Por que é grátis
O tradutor binário roda inteiro no seu navegador. Não existe requisição de rede, então o que você digita nunca sai da sua máquina, não fica em nenhum log e some assim que a página é recarregada.
Sem conta, sem marca d'água, sem versão paga escondida atrás de um limite de uso. É mais uma ferramenta entre as várias do FreeToGenerate.com, mantida do mesmo jeito que todas as outras.