Pular para o conteúdo
Favoritos

Conversor de Binário

Atualizado:

Converta texto em valores binários separados por espaços ou transforme grupos binários de volta em texto. Introduza o conteúdo e escolha Para Binário ou Para Texto.

Conversor de Código Binário a partir de Texto

Campos de entrada
Se ativado, o resultado é atualizado automaticamente quando você altera qualquer valor.

Fórmula do Conversor de Binário

Fórmula
\[ b_i=\operatorname{padLeft}_{8}\!\left(\operatorname{base}_{2}(u_i)\right),\qquad c_i=\operatorname{fromCharCode}\!\left(\operatorname{parseInt}_{2}(b_i)\right) \ ]

Onde:

  • \(u_i\) — o valor numérico de uma unidade de código UTF-16 no texto introduzido.
  • \(b_i\) — a sua representação binária, preenchida à esquerda com, pelo menos, oito dígitos; ao descodificar, um grupo binário separado por espaços em branco.
  • \(c_i\) — o carácter produzido pela descodificação de um grupo binário.

A opção Para Binário converte cada unidade de código UTF-16 separadamente e junta os grupos resultantes com espaços. A opção Para Texto interpreta cada grupo separado por espaços em branco como um número na base 2 e converte-o numa unidade de código UTF-16.

Conversor de Binário – Exemplo de Cálculo

Exemplo: introduza Hi em Conteúdo e selecione Para Binário. Os valores das unidades de código de H e i são 72 e 105.

\[ 72_{10}=01001000_2,\qquad 105_{10}=01101001_2 \]

Resultado: 01001000 01101001. Para recuperar Hi, introduza esses dois grupos em Conteúdo e selecione Para Texto.

Como utilizar a calculadora

  1. Introduza texto ou códigos binários em Conteúdo. Para a conversão de binário para texto, separe cada valor binário com um espaço em branco, como um espaço ou uma quebra de linha.
  2. Defina o Tipo como Para Binário para codificar texto, ou Para Texto para descodificar grupos binários.
  3. Leia ou copie o conteúdo convertido em Resultado. Se obtiver um carácter inesperado, verifique os grupos binários e a direção selecionada.

O que significa o resultado binário

Binário é um sistema numérico de base 2: cada dígito é 0 ou 1. Este conversor representa em binário o valor numérico de cada unidade de código UTF-16 do JavaScript. Para as letras, dígitos e sinais de pontuação do inglês, esses valores correspondem aos códigos ASCII. Por exemplo, a maiúscula A tem o valor 65, pelo que a sua saída é 01000001. Os espaços entre os grupos de saída permitem identificar e descodificar cada valor separadamente.

O preenchimento usado em Para Binário define uma largura mínima de oito dígitos, não uma largura fixa. Valores superiores a 255 produzem, portanto, grupos mais longos. Alguns símbolos, incluindo muitos emojis, são compostos por duas unidades de código UTF-16 e produzem dois grupos binários. É por isso que a saída não deve ser assumida como uma sequência de bytes de oito bits ou como uma codificação UTF-8.

A opção Para Texto funciona na direção oposta: trata cada grupo separado por espaços em branco como um número binário e converte o valor num carácter. Por exemplo, 01001000 01101001 torna-se Hi. Se precisar de inspecionar códigos de caracteres sob outra forma, experimente o Conversor de ASCII ou o Conversor de Hexadecimal. Para uma forma diferente de representar texto para transmissão, consulte o Codificador Base64; Base64 não é notação binária.

Pressupostos e dicas práticas

A calculadora remove os espaços em branco do início e do fim de todo o campo Conteúdo antes de o converter. Os espaços dentro do texto são mantidos e codificados como caracteres. Se precisar de codificar espaços iniciais ou finais, esta ferramenta não os preservará tal como foram introduzidos.

Ao descodificar, utilize um grupo binário por unidade de código de carácter. A saída de exemplo de Para Binário é um formato fiável para colar de volta em Para Texto. A descodificação não verifica se um grupo contém apenas 0s e 1s: o JavaScript pode parar a análise num dígito inválido ou produzir um carácter inesperado. Reveja a entrada se o resultado parecer errado, em vez de o tratar como dados binários validados.

Este é um conversor de unidades de código de texto, não um codificador de ficheiros ou de bytes. Em particular, a sua saída para texto não ASCII pode diferir dos bytes usados quando esse texto é guardado como UTF-8. Para comparações fiáveis, certifique-se de que ambos os lados de uma conversão usam a mesma representação de caracteres e os mesmos limites de grupos.

Perguntas frequentes

Como posso converter uma letra em binário manualmente?

Procure o código de carácter da letra, converta esse número para a base 2 e acrescente zeros à esquerda até ter, pelo menos, oito dígitos. Por exemplo, A tem o código 65. Como 65 = 64 + 1, o seu valor binário é 1000001, preenchido para 01000001. Para o descodificar, some os valores posicionais marcados com 1s e procure o código resultante.

Os zeros à esquerda alteram o carácter ao converter binário em texto?

Não. Os zeros à esquerda não alteram o valor de um número binário, por isso 1000001 e 01000001 descodificam ambos para A. O conversor acrescenta zeros ao codificar para facilitar a leitura dos valores pequenos, mas não os exige ao descodificar. Mantenha os grupos separados para que ele saiba onde termina um código de carácter e começa o seguinte.

Posso colar uma sequência contínua de bits sem espaços?

Não se representar vários caracteres. O conversor trata cada grupo separado por espaços em branco como um único número; não divide automaticamente uma sequência contínua em blocos de oito bits. Por exemplo, para descodificar duas letras, separe os seus códigos com um espaço ou uma quebra de linha. Isto é relevante sobretudo porque alguns grupos codificados têm mais de oito bits.

Porque é que o binário de uma letra acentuada difere dos seus bytes UTF-8?

Este conversor usa unidades de código UTF-16, enquanto o UTF-8 usa uma codificação diferente que pode representar o mesmo carácter com números diferentes de bytes. Por exemplo, é aparece aqui como um único grupo, 11101001, mas os seus bytes UTF-8 são 11000011 10101001. Use um conversor de bytes UTF-8 se precisar do conteúdo binário de um ficheiro UTF-8 guardado.

Porque é que um emoji produz dois grupos binários?

Muitos emojis têm um valor Unicode que o UTF-16 representa usando um par de unidades de código, chamado par substituto. O conversor processa cada unidade de código separadamente, por isso um único emoji visível pode produzir dois grupos. Ambos os grupos devem ser mantidos na ordem correta para o recuperar. O número de grupos binários não é, portanto, sempre igual ao número de caracteres visíveis.

Porque é que o resultado descodificado aparece em branco ou contém um símbolo estranho?

Um grupo binário pode descodificar para um carácter de controlo, como uma tabulação ou quebra de linha, que pode não aparecer como um símbolo visível. Um valor invulgarmente grande ou um grupo com dígitos não binários também pode produzir um resultado inesperado, porque a entrada não é estritamente validada. Verifique os dígitos e os limites de cada grupo e use um inspetor de códigos de carácter se a saída continuar pouco clara.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *