Conversor de ASCII para Hex

O hexadecimal é a abreviação do programador para bytes: dois dígitos de 0-9 e A-F cobrem cada valor de 0 a 255 de forma compacta. Este conversor pega texto ASCII e retorna o código hexadecimal de cada caractere, o que você precisa ao escrever um array de bytes em C, inspecionar um pacote de rede ou converter entre formatos de codificação durante uma sessão de engenharia reversa.

Como o ASCII se torna hex

  1. 1

    Cole seu texto

    Qualquer caractere ASCII funciona: letras, números, pontuação.

  2. 2

    Cada caractere é consultado como um byte

    Por exemplo, `H` é decimal 72, que é `0x48` em hex.

  3. 3

    Os pares hexadecimais são unidos

    Você pode escolher um separador: espaço, hífen, vírgula ou nenhum.

  4. 4

    Copie o resultado

    Cole em código-fonte, um editor hexadecimal ou um analisador de protocolo.

Exemplo prático

A string Go! codifica como:

Caractere Decimal Hex
G 71 47
o 111 6F
! 33 21

Então Go! vira 47 6F 21, ou \x47\x6F\x21 na forma de escape de string C, ou 0x47, 0x6F, 0x21 como array de bytes.

Transformando a saída em outros formatos

O conversor sempre emite pares hexadecimais simples, separados pelo separador escolhido. A tabela mostra como envolver esses pares para os destinos comuns.

Caso de uso Formato Exemplo
Array de bytes em C/C++ 0xXX, 0xXX 0x47, 0x6F
echo do shell com -e \xXX \x47\x6F
Despejo hex separado por espaços XX XX 47 6F
String contínua XXXX 476F
Codificação URL em porcentagem %XX %47%6F

Uma pegadinha comum

O hexadecimal não diferencia maiúsculas de minúsculas (0x4f e 0x4F são o mesmo byte), mas muitos parsers se importam. Este conversor emite pares em maiúsculas; se o código ao redor espera minúsculas, converta os pares depois de copiar.

Entrada não ASCII

Com entrada ASCII pura, cada caractere é um byte e a saída é exata. Caracteres acima de U+007F (letras acentuadas, emoji, CJK) não são tratados com fidelidade: apenas o primeiro byte da codificação UTF-8 de cada caractere é usado, então café produz 63 61 66 C3 e o segundo byte de é é perdido. Para um despejo hexadecimal byte a byte de texto UTF-8, use um conversor compatível com UTF-8.

Perguntas frequentes

O valor não, 0x4F e 0x4f são o mesmo byte. Mas algumas ferramentas e estilos de código insistem em uma única forma. Este conversor emite maiúsculas, que é o que a maioria das toolchains embarcadas espera; o método .hex() do Python emite minúsculas se o seu código precisar.

É uma convenção do C que informa ao parser que os dígitos seguintes são hexadecimais, não decimais. Sem o prefixo, 47 é 47 (decimal) ou 71 (hex) dependendo do contexto.

A saída tem exatamente um par hexadecimal por caractere digitado. Letras acentuadas, emoji e caracteres CJK produzem apenas seu primeiro byte UTF-8, então seu hex não decodifica de volta para o caractere original. Com ASCII puro a correspondência é exata.

Sim, use o Conversor de Hex para ASCII. Ele aceita hex contínuo, pares separados por espaços e prefixos 0x.

Ferramentas relacionadas

Ferramenta disponível em outros idiomas