Converter texto em binário / hexadecimal / ASCII
Entradas
| Texto | Hi |
|---|
Converter texto em binário / hexadecimal / ASCII
Digite qualquer texto para vê-lo em binário, hexadecimal e códigos decimais de caractere. O binário e o hexadecimal seguem a sequência de bytes UTF-8, enquanto o decimal indica o ponto de código Unicode de cada caractere — o valor ASCII familiar para texto simples em inglês.
Entradas
Texto
Resultados
Insira um valor para ver os resultados.
Codificações
Texto em binário / hexadecimal / ASCII
O texto é armazenado como números. Cada caractere que um computador manipula — uma letra, um dígito, um sinal de pontuação, um emoji — tem um código numérico, e esse código pode ser escrito em binário, em hexadecimal ou em decimal. Esta calculadora recebe um texto e mostra as três formas ao mesmo tempo, para que você veja exatamente como as palavras na tela viram os bits no disco. É útil para depurar problemas de codificação, montar tabelas de consulta, aprender como funcionam os códigos de caractere ou apenas por curiosidade sobre o que uma cadeia realmente é por baixo.
Dos caracteres aos códigos
A correspondência entre caracteres e números é definida por um conjunto de caracteres. O mais antigo de uso comum é o ASCII, que atribui os 128 códigos de 0 a 127 às letras latinas sem acento, aos dígitos, à pontuação comum e a alguns códigos de controle. A maiúscula H é 72, o i minúsculo é 105, um espaço é 32 e o dígito 0 é 48. O texto moderno usa Unicode, que estende a mesma ideia a toda escrita e símbolo em uso, mantendo intactos os códigos ASCII originais.
Uma vez que um caractere tem um código, escrevê-lo em outra base é aritmética simples. O número 72 é 01001000 em binário e 48 em hexadecimal. Esta calculadora lista o código decimal de cada caractere e, em seguida, o binário e o hexadecimal dos bytes que o codificam.
ASCII versus UTF-8
O ASCII cobre apenas 128 caracteres, cada um cabendo em um único byte. O UTF-8 é a codificação que permite que toda a amplitude do Unicode trafegue por sistemas feitos para bytes. Sua propriedade central é a compatibilidade com versões anteriores: cada caractere ASCII é codificado como exatamente um byte, idêntico ao seu valor ASCII. Tudo fora da faixa ASCII se expande para entre dois e quatro bytes.
Por isso a saída binária e hexadecimal aqui é agrupada por byte UTF-8. Uma letra acentuada como é (ponto de código 233) é codificada como os dois bytes C3 A9; um caractere CJK típico ocupa três bytes; um emoji como 😀 (ponto de código 128512) ocupa quatro. A saída decimal, por outro lado, lista um ponto de código por caractere, de modo que um caractere de vários bytes ainda aparece como um único número decimal mesmo ocupando vários bytes.
Lendo a saída
Cada grupo separado por espaço nos resultados binário e hexadecimal é um byte: oito bits ou dois dígitos hexadecimais. Agrupar por byte mantém visíveis os limites entre os caracteres e facilita extrair o código de um único caractere de uma cadeia longa. A contagem de caracteres e a de bytes UTF-8 aparecem ao lado; quando diferem, o texto contém caracteres não ASCII que se expandem para vários bytes.
Exemplo resolvido
Tome o texto Hi. Os dois caracteres estão na faixa ASCII, então cada um é um único byte.
Os códigos decimais são 72 105, o hexadecimal é 48 69 e o binário é 01001000 01101001. Dois caracteres, dois bytes: a contagem de caracteres e a de bytes coincidem porque o texto é ASCII puro.
Tome agora um único emoji, 😀. É um caractere, mas fica bem fora do ASCII, no ponto de código 128512 (U+1F600). O UTF-8 o codifica como os quatro bytes F0 9F 98 80, então a saída binária tem quatro grupos de 8 bits, a decimal é o único ponto de código 128512, e a contagem de bytes é 4 enquanto a de caracteres é 1.
Revertendo a codificação
O processo é sem perdas e reversível. Divida o binário de volta em bytes de 8 bits, ou leia o hexadecimal de dois em dois dígitos, remonte a sequência de bytes UTF-8 e decodifique-a. Como o UTF-8 é um padrão fixo, qualquer ferramenta compatível reconstrói o texto original com precisão: nenhuma informação se perde ao ir de texto para binário e voltar.
Calculadoras relacionadas
Para ver como um único número se escreve em decimal, binário e hexadecimal sem a etapa de codificação de caracteres, use o Conversor de Base Numérica. Para ver um endereço IPv4 de 32 bits em suas formas inteira, hexadecimal e binária, consulte o Conversor de representação de endereço IPv4. E para medir quanta informação uma cadeia carrega, o Calculadora de Entropia de Shannon estima sua entropia.
Perguntas frequentes (FAQ)
Como o texto é transformado em binário?
Os computadores armazenam texto como números. Cada caractere recebe um código: a letra H é 72, o i é 105, um espaço é 32 e assim por diante. Esses números são escritos em base 2 (binário) usando uns e zeros.
Para os caracteres na faixa ASCII (as letras inglesas, os dígitos e a pontuação comum), cada caractere é um único byte e, portanto, vira oito bits. A palavra Hi é 72 e 105, que em binário é 01001000 e 01101001.
Qual é a diferença entre ASCII e UTF-8?
O ASCII é o esquema original de 7 bits que cobre 128 caracteres: as letras latinas sem acento, os dígitos, a pontuação e os códigos de controle. Todo caractere ASCII cabe em um único byte.
O UTF-8 é um superconjunto capaz de representar todos os caracteres Unicode mantendo a compatibilidade byte a byte com o ASCII. Os caracteres ASCII continuam com um byte, mas as letras acentuadas costumam ocupar dois bytes, a maioria dos demais sistemas de escrita três e os emojis quatro. Esta calculadora mostra binário e hexadecimal como bytes UTF-8, por isso um único emoji produz quatro grupos de 8 bits em vez de um.
Por que os dígitos são agrupados com espaços?
Cada grupo separado por espaço é um byte: oito bits na saída binária, dois dígitos na hexadecimal. Agrupar por byte torna visíveis os limites entre os caracteres e facilita ler o código de um único caractere dentro de uma sequência longa.
A saída decimal é agrupada por caractere, e não por byte, de modo que um caractere de vários bytes aparece como um único ponto de código mesmo ocupando vários bytes.
Dá para converter o binário de volta em texto?
Sim. A codificação é reversível: divida o binário em bytes de 8 bits, converta cada byte em seu número, remonte a sequência de bytes UTF-8 e decodifique-a em caracteres. O mesmo vale para a forma hexadecimal. Como o UTF-8 é um padrão bem definido, qualquer ferramenta que leia UTF-8 reconstruirá exatamente o texto original.
Próximas sugestões
Conversor de representação de endereço IPv4
Digite um endereço IPv4 em decimal com pontos para vê-lo como um inteiro de 32 bits, um valor hexadecimal e binário com pontos. Útil para ler capturas de pacotes, montar listas de controle de acesso e entender como os endereços são armazenados.