tigtools

Conversor de Texto para Binário

Converta texto nos bytes armazenados pelo computador, representados em binário, hexadecimal, decimal ou octal, ou cole bytes para lê-los como texto. Compatível com qualquer idioma e emojis.

Executado no seu navegador Sem cadastro

Direção
Entre bytes

Como usar

  1. Escolha “Texto → bytes” para codificar ou “Bytes → texto” para decodificar.
  2. Escolha um formato de byte: binário, hexadecimal, decimal ou octal.
  3. Digite ou cole o conteúdo. O resultado e a quantidade de bytes são atualizados enquanto você digita.
  4. Copie o resultado ou transfira-o para o campo de entrada para verificar se a conversão de ida e volta funciona.

Como funciona

Os computadores armazenam texto como bytes. Esta ferramenta usa UTF-8, a codificação usada por quase todos os sites e sistemas modernos. Em UTF-8, os 128 caracteres ASCII (letras do inglês, dígitos e pontuação básica) ocupam um byte cada. Por isso, H é 01001000 em binário e 48 em hexadecimal. Todos os outros caracteres ocupam de dois a quatro bytes: é ocupa 2 bytes (C3 A9), € e ☕ ocupam 3 bytes, e a maioria dos emojis ocupa 4 bytes. Por isso, a quantidade de bytes pode ser maior que a de caracteres, e um caractere pode se transformar em vários grupos de 8 bits.

Cada byte pode ser representado de quatro formas comuns: binário com 8 dígitos (00000000–11111111), hexadecimal com 2 dígitos (00–FF), decimal (0–255) ou octal com 3 dígitos (000–377). Quando os bytes são escritos sem separadores, os valores binários, hexadecimais e octais são preenchidos até uma largura fixa, e os valores decimais são preenchidos com zeros até 3 dígitos para que possam ser separados novamente sem ambiguidade.

A decodificação aceita diferentes formatos: espaços, quebras de linha, vírgulas e ponto e vírgula entre bytes são ignorados, assim como os prefixos 0x e 0b e as sequências de escape \x. Cada grupo é verificado; um dígito não permitido no formato escolhido ou um valor acima de 255 é informado com a posição do byte. Após a decodificação, os bytes são verificados quanto à validade do UTF-8, e você recebe um aviso se não forem texto.

Caracteres formados por vários pontos de código, como bandeiras ou emojis com tons de pele, são contados aqui como vários caracteres, pois cada ponto de código é codificado separadamente.

Exemplos

O clássico “Hi” em binário

H corresponde ao valor ASCII 72 e i ao 105. Assim, “Hi” vira 01001000 01101001 em binário, 48 69 em hexadecimal e 72 105 em decimal: 2 caracteres, 2 bytes, 16 bits.

Por que “Café” ocupa 5 bytes

C, a e f ocupam um byte cada, mas é ocupa dois bytes em UTF-8: 11000011 10101001 (C3 A9). A palavra tem 4 caracteres, mas ocupa 5 bytes, o que importa para limites de colunas em bancos de dados e campos de protocolo medidos em bytes.

Como ler um despejo hexadecimal

Um depurador exibe 48 65 6c 6c 6f 2c 20 e4 b8 96 e7 95 8c. Cole o conteúdo com “Bytes → texto” e selecione Hexadecimal para obter “Hello, 世界”; cada caractere chinês ocupa 3 bytes.

Perguntas frequentes

Por que um caractere vira 16, 24 ou 32 bits?

Em UTF-8, somente os caracteres ASCII ocupam um byte (8 bits). Letras acentuadas e a maioria dos outros alfabetos usam 2 bytes; chinês, japonês, coreano e muitos símbolos usam 3; e emojis usam 4. Cada byte é exibido em seu próprio grupo.

Isto é ASCII ou UTF-8?

UTF-8. Para textos em inglês simples, o resultado é idêntico ao ASCII, pois o UTF-8 foi projetado para ser compatível com ele. Caracteres fora do ASCII não poderiam ser representados apenas com ASCII.

Por que ocorre um erro ao decodificar binário?

Cada byte pode ter no máximo 8 dígitos binários e conter apenas 0 e 1. Sem espaços, o número total de dígitos precisa ser múltiplo de 8. A mensagem de erro indica o byte que não pôde ser lido.

O que significa “UTF-8 inválido”?

Os bytes não formam sequências UTF-8 válidas, por exemplo, um byte isolado acima de 127 ou uma sequência interrompida no meio. Os dados podem vir de um arquivo com outra codificação, como Windows-1252, ou talvez nem sejam texto.

Privacidade

A conversão é feita no seu navegador usando o codificador e o decodificador UTF-8 integrados. Seu texto não é enviado, armazenado nem incluído nas métricas de uso.