Para converter um número decimal no formato de ponto flutuante IEEE 754, siga estas etapas:
Etapa 1:Separe a mantissa e o expoente. * Divida o número decimal em duas partes:a mantissa (os algarismos significativos) e o expoente (a potência de 10 pela qual o número é multiplicado).
Etapa 2:Converta a mantissa em binário. * Converta a mantissa em binário dividindo repetidamente a mantissa por 2 e acompanhando os restos. Os restos, lidos de baixo para cima, formam a representação binária da mantissa.
Etapa 3:Normalize a mantissa. * Se o primeiro dígito da mantissa binária não for 1, desloque a mantissa um bit para a esquerda e aumente o expoente em 1. Repita esta etapa até que o primeiro dígito da mantissa binária seja 1.
Etapa 4:adicione o viés do expoente. * Adicione a tendência (127 para precisão simples e 1023 para precisão dupla) ao expoente.
Etapa 5:Crie a representação binária. * Combine a representação binária da mantissa, o expoente tendencioso e o bit de sinal (0 para números positivos e 1 para números negativos) para formar a representação binária de ponto flutuante IEEE 754.
Por exemplo, para converter o número decimal 123.456 no formato de precisão simples IEEE 754:
1. Separe a mantissa e o expoente:
- Mantissa:123.456
- Expoente:0
2. Converta a mantissa em binário:
- 123,456/2 =61,728 (restante:0)
- 61,728/2 =30,864 (restante:1)
- 30,864 / 2 =15,432 (restante:1)
- 15,432/2 =7,716 (restante:0)
- 7,716 / 2 =3,858 (restante:0)
- 3,858/2 =1,929 (restante:1)
- 1,929 / 2 =0,965 (restante:0)
- 0,965 / 2 =0,483 (restante:0)
- 0,483 / 2 =0,242 (restante:1)
- 0,242 / 2 =0,121 (restante:0)
- 0,121/2 =0,061 (restante:0)
- 0,061/2 =0,031 (restante:0)
- 0,031/2 =0,016 (restante:1)
- A mantissa binária é 0111101110011001100110011010.
3. Normalize a mantissa:
- Desloque a mantissa um pouco para a esquerda:1111011100110011001100110100.
4. Adicione o viés do expoente:
- Viés de expoente para precisão simples:127
- Expoente tendencioso:127 + 0 =127.
5. Crie a representação binária:
- Bit de sinal:0 (já que o número é positivo)
- Expoente tendencioso:01111111
- Mantissa normalizada:111011100110011001100110100
- A representação de precisão única IEEE 754 de 123.456 é:0 01111111 111011100110011001100110100.