Logica Conversão HEXA<>float

Conversão HEXA-float e float-HEXA

A maioria das linguagens possuem as funções para trabalhar com números de ponto flutuante, ou seja, float.

O float foi padronizado nos compiladores modernos, seguindo a norma IEEE-754 e é armazenado em 32 bits.

Para aqueles curiosos ou detalhistas que desejam aprender mais sobre como funciona, foi criada uma planilha que mostra os cálculos que o compilador executa ao fazer a conversão.

Em resumo, a variável de ponto flutuante ocupa 32 bits, dividido em 3 partes:

  • 1 bit para o sinal (0=positivo e 1=negativo);
  • 8 bits para o expoente de 2 (após converter os 8 bits para número decimal, subtrai-se 127);
  • 23 bits para a mantissa, ou seja, a parte significativa do número mas tem uma pegadinha aqui: devemos considerar o bit 24 que é sempre 1.

Abaixo, apresento a planilha que criei:

Conversor Hexa Float

Conclusão:

Com a padronização, sabemos o que esperar das funções que convertem os números e verificamos que há uma pequena imprecisão devido a erros de arredondamento que ocorre a partir da sétima casa decimal.

Espero que aproveitem este tutorial e bons estudos!

'Labirito Master