Web4College
Carregando visualização…

Conversor de hexadecimal para ponto flutuante — Visualização passo a passo

Converta um valor hexadecimal de 8 dígitos em um número de ponto flutuante IEEE 754 de 32 bits e explore a conversão passo a passo.

12.5

Interprete oito dígitos hexadecimais como um número de ponto flutuante IEEE 754 de 32 bits. Use para ler padrões de bits de arquivos, memória ou registradores de dispositivos.

Como converter hexadecimal para ponto flutuante

  1. Expanda os dígitos hexadecimais. Escreva quatro bits por dígito. Mantenha os zeros à esquerda.
  2. Separe os 32 bits. Separe 1 bit de sinal, 8 bits de expoente e 23 bits de fração.
  3. Decodifique o expoente. Leia os bits do expoente como E. Para E de 1 a 254, subtraia 127.
  4. Monte a mantissa (significando). Para um valor normal, some os valores posicionais dos bits 1 da fração (½, ¼, ⅛, …) e adicione o 1 inicial.
  5. Combine os campos. Multiplique o fator de sinal (+1 ou −1), a mantissa e o fator de potência de dois.

Exemplo: 41480000 tem sinal +, expoente 130 − 127 = 3 e mantissa 1.5625. Logo, +1 × 1.5625 × 2³ = 12.5.

E = 0 usa expoente −126 e um 0 inicial; fração zero resulta em zero com sinal. E = 255 indica infinito quando a fração é zero, ou NaN caso contrário.

Exemplos de hexadecimal para ponto flutuante

HexFloatSignificado
4148000012.5Exemplo padrão
3F8000001Um positivo
3F0000000.5Um meio
C0200000−2.5Número negativo
000000000Zero positivo
80000000−0Zero negativo
7F800000+InfinityInfinito positivo
7FC00000NaNNão é um número

Termos principais

TermoSignificado
IEEE 754O padrão que define este formato de ponto flutuante.
Bit de sinal0 indica positivo; 1 indica negativo.
ExpoenteOito bits que determinam a escala ou indicam um valor especial.
Viés127, o deslocamento dos expoentes normais.
Fração23 bits que codificam a parte fracionária.
Mantissa1 mais a fração para números normais; apenas a fração quando E = 0.

Referência do formato: Guia da Oracle sobre o formato IEEE 754 de precisão simples.