Zobrazení čísel v počítači
2. Zobrazení čísel v pohyblivé řádové čárce
2.3. Zobrazená čísla ve formátu binary 32 standardu IEEE 754
Při pokusu o zjištění, jaké číslo z desítkové soustavy se zobrazilo v binárním formátu s určitou přesností dle standardu IEEE 754 použijete inverzní kroky oproti těm z předchozí kapitoly. Pro číslo zobrazené ve formátu
binary32 vše shrnuje následující obrázek:

Obr. 7: Schéma pro zjištění čísla,
které se zobrazilo ve formátu binary32 ve standardu IEEE 754.
Obecně budete postupovat takto:
- Podle nejvýznamnějšího místa poznáme znaménko s (0 = +; 1 = −).
- Určitý počet pozic za nejvýznamnějším místem (dle formátu 8, 11 nebo 15) tvoří exponent e, který je třeba převést zpět do desítkové soustavy (způsob si připomeňte v případě potřeby v příslušné studijní kapitole). Od získaného čísla podle formátu odečtete hodnotu 127, 1023 nebo 16383 v desítkové soustavě (exponent byl zobrazen v kódu s posunutou nulou).
- Číslo na zbývajících místech opět převedete známým způsobem do desítkové soustavy, čímž získáte hodnotu fraction.
- Dosadíte za s, e, f do vztahu: H10 = (−1)s × (1 + f) × 2e a vypočteme číslo, které bylo dle standardu IEEE 754 zobrazeno.
Příklad
Pokud chcete zjistit, jaké číslo se zobrazilo ve formátu s jednonásobnou přesností ve standardu IEEE 754 jako 110000100101001100110011001100112IEEE754, uděláte to následujícím způsobem.
1. Číslo si rozdělíte na tři části 1|10000100|101001100110011001100112IEEE754.
2. Znaménko:
- První místo 12 určuje, že číslo v desítkové soustavě bylo záporné, protože (−1)1 = −110.
3. Exponent:
- Následujících osm míst 100001002 dá po převodu do desítkové soustavy číslo 13210.
- Pokud chcete získat správnou hodnotu exponentu, musíte ještě odečíst číslo 12710 a zjistíte, že e = 510.
4. Fraction:
- Zbylá místa 101001100110011001100112 opět převedete některým ze známých způsobů do desítkové soustavy.
- Získáte tím fraction, která se rovná 0,6499999761581420898437510.
5. Mantisa:
- K fraction přičtete 110, čímž získáte mantisu 1,6499999761581420898437510.
6. Výsledek:
- Dosadíte do semilogaritmického tvaru H10 = (−1)1 × 1,64999997615814208984375 × 25.
- Výpočtem zjistíte, že se zobrazovalo číslo 52,79999923706054687510.
Je uvedené číslo v desítkové soustavě opravdu tím, které do zobrazení vstupovalo?