Conversor de Hexadecimal
Converta texto em valores hexadecimais ou transforme códigos hexadecimais separados por espaços de volta em texto. Insira o conteúdo e escolha Para HEX ou Para Texto.
Conversor de Texto para Hexadecimal
Fórmula do Conversor de Hexadecimal
Onde:
- \(u_i\) — uma unidade de código UTF-16 do texto de entrada.
- \(h_i\) — sua representação hexadecimal em minúsculas, preenchida com pelo menos dois dígitos.
Para HEX converte cada unidade de código UTF-16 separadamente e une os valores com espaços. Para Texto analisa cada valor hexadecimal separado por espaços em branco e o converte em uma unidade de código UTF-16.
Conversor de Hexadecimal – Exemplo de Cálculo
Exemplo: insira Hi em Conteúdo e selecione Para HEX.
\[\texttt{H}\rightarrow 72_{10}=48_{16},\qquad \texttt{i}\rightarrow 105_{10}=69_{16}\]
Resultado: 48 69. Para reverter, insira 48 69 e selecione Para Texto; o resultado é Hi.
Como usar o Conversor de Hexadecimal
- Insira texto ou valores hexadecimais no campo Conteúdo. O campo aceita várias linhas, embora os espaços em branco no início e no fim sejam removidos antes da conversão.
- Escolha Para HEX no menu Tipo para converter texto em valores hexadecimais. Esta é a seleção padrão.
- Escolha Para Texto para decodificar valores hexadecimais. Separe os valores com espaços, tabulações ou quebras de linha; por exemplo, insira
48 69em vez de4869para produzirHi. - Leia ou copie o valor convertido em Resultado. Se Conteúdo estiver vazio após a remoção dos espaços em branco no início e no fim, a calculadora pede que você insira algum conteúdo.
O que uma conversão hexadecimal representa?
O sistema hexadecimal, ou base 16, escreve números usando os dígitos 0–9 e as letras a–f. Cada dígito hexadecimal representa quatro bits, por isso o hexadecimal é uma forma compacta de exibir valores numéricos. Esta calculadora transforma texto em uma sequência legível desses valores e pode transformar a sequência de volta em texto. Os espaços em um resultado de Para HEX separam valores; não fazem parte do texto original, a menos que um espaço interno tenha sido ele próprio convertido.
Para letras latinas básicas, dígitos e sinais de pontuação, o resultado se parece com o hexadecimal ASCII conhecido: A se torna 41 e um espaço interno se torna 20. Isso torna o resultado útil para inspecionar valores de caracteres ou verificar uma sequência curta de texto. Se você quiser os valores decimais dos caracteres, use o Conversor de ASCII; para sequências escritas na base 2, consulte o Conversor de Binário.
A conversão funciona nas unidades de código UTF-16 usadas pelo JavaScript, não nos bytes UTF-8. Um caractere fora do plano multilíngue básico, como muitos emojis, é representado por duas unidades de código e, portanto, produz dois valores hexadecimais separados por espaço. O resultado não deve ser tratado como um dump hexadecimal UTF-8 nem como os bytes brutos de um arquivo. Se você precisa representar dados para transporte em vez de inspecionar esses valores de caracteres, o Codificador Base64 usa um método de codificação diferente.
Regras de entrada e limites práticos
No modo Para HEX, cada unidade de código produz um valor hexadecimal em minúsculas com largura mínima de dois dígitos. Valores acima de ff podem, portanto, ter três ou quatro dígitos. Os valores são separados por espaços simples no resultado; o conversor não adiciona o prefixo 0x. Copie o resultado completo, incluindo seus separadores, se planejar decodificá-lo com Para Texto.
No modo Para Texto, o espaço em branco separa valores, e não pares de dígitos. Por exemplo, 48 69 é lido como dois valores, enquanto 4869 é lido como um único número hexadecimal e produz um caractere diferente. Insira valores hexadecimais separados, e não um fluxo contínuo de bytes, e, em caso de saídas inesperadas, verifique se há separadores ausentes ou valores inválidos.
A calculadora remove espaços em branco no início e no fim do Conteúdo antes de qualquer uma das conversões. Como resultado, ela não pode preservar espaços ou quebras de linha logo no começo ou no fim do texto que você inserir. Os espaços em branco dentro do texto são mantidos no modo Para HEX e convertidos em seus próprios valores hexadecimais. Esses detalhes importam quando você compara uma saída com o texto original exato: teste uma amostra curta primeiro e verifique se a conversão de volta gera o texto esperado.
Perguntas frequentes
Como converter um caractere em hexadecimal manualmente?
Encontre o valor numérico do caractere e divida-o por 16. O resto é o último dígito hexadecimal; repita com o quociente até chegar a zero e leia os restos de trás para frente. Por exemplo, B tem o valor 66: a divisão por 16 dá 4 com resto 2, então seu valor hexadecimal é 42. Isso funciona diretamente para caracteres latinos básicos.
Por que este resultado difere de um conversor hexadecimal UTF-8?
As duas ferramentas representam coisas diferentes. Este conversor mostra unidades de código UTF-16, enquanto um conversor hexadecimal UTF-8 mostra bytes codificados. Por exemplo, a letra é aparece aqui como e9, mas seus bytes UTF-8 são c3 a9. Nenhum dos resultados está errado; escolha o conversor baseado em bytes quando precisar inspecionar um arquivo, uma mensagem de rede ou uma codificação UTF-8.
Por que um emoji produz dois valores hexadecimais?
Muitos emojis têm pontos de código Unicode acima da faixa de uma única unidade de código UTF-16. O UTF-16 representa cada um desses caracteres com um par de substitutos (surrogates). Por exemplo, 😀 produz d83d de00. Mantenha os dois valores na ordem ao decodificar; qualquer um dos valores sozinho não representa o emoji e pode ser exibido como um símbolo de substituição.
Posso usar hexadecimal em maiúsculas ou o prefixo 0x ao decodificar?
Letras maiúsculas funcionam: 4A e 4a são decodificados para o mesmo valor. Um prefixo 0x, como em 0x4a, também é aceito pelo analisador hexadecimal subjacente, embora o conversor não adicione prefixos aos seus próprios resultados. Mantenha cada valor de caractere como um item separado delimitado por espaços em branco. Não use vírgulas como separadores.
O que acontece se um valor hexadecimal for inválido ou grande demais?
O decodificador não valida estritamente cada item. Um valor como 41xyz ainda pode ser decodificado como A, porque a análise para no primeiro caractere não hexadecimal. Um item sem dígitos hexadecimais válidos pode se tornar um caractere nulo invisível, enquanto um valor acima de ffff é reduzido a uma unidade de código UTF-16. Verifique a entrada com cuidado se um resultado exato for importante.
Converter texto em hexadecimal é uma forma de criptografá-lo?
Não. O hexadecimal é uma representação legível de valores numéricos, não criptografia. Qualquer pessoa pode converter os valores de volta sem uma chave, portanto o hexadecimal não protege senhas, mensagens privadas ou outros dados sensíveis. Se você precisa de confidencialidade, use um método de criptografia estabelecido; se só precisa inspecionar valores de caracteres, o hexadecimal é adequado.