IEEE 754 converter

Deze IEEE 754 converter zet een decimaal getal om in het bitpatroon van 16, 32 of 64 bit en toont teken, exponent, mantisse, de exact opgeslagen waarde en de afrondfout. Ook hex en bits kun je invoeren.

Bron: Wikipedia – IEEE 754 (Formate, Bias, subnormale Zahlen, Sonderwerte). Bijgewerkt: .

Mijn toolboxJe invoer wordt alleen in deze browser opgeslagen.

Resultaat

Resultaat
0x3DCCCCCD · 0 01111011 10011001100110011001101
Opbouw van de bits
OnderdeelBitsBetekenis
Teken0+
Exponent (8 bit)01111011123 − 127 = -4
Mantisse (23 bit)100110011001100110011011.10011001100110011001101
Opgeslagen waarde
GrootheidWaarde
Hex0x3DCCCCCD
Soortnormaal getal
Exact opgeslagen waarde0.100000001490116119384765625
Afwijking van de invoer+1.490e-9
Voorganger0.0999999940395355224609375
Opvolger0.10000000894069671630859375
Er wordt afgerond naar het dichtstbijzijnde weer te geven getal, bij een gelijke afstand naar de even mantisse. Voorganger en opvolger tonen de afstand tussen twee naburige drijvende-kommagetallen. Bij 32 bit geldt: waarde = (−1)^s · 2^(e − bias) · (1 + m/2^p).

Zo wordt het berekend

Een drijvende-kommagetal bestaat uit een teken s, een exponent e en een mantisse m: waarde = (−1)^s · 2^(e − bias) · 1,m. Het decimale getal 0,1 wordt als float 0x3DCCCCCD en is opgeslagen als 0,100000001490116119384765625.

De drie formaten

Waarom 0,1 niet exact is

Drijvende-kommagetallen slaan machten van twee op, maar 0,1 is in het binaire stelsel een repeterende breuk. Daarom wordt er afgerond, en 0,1 + 0,2 geeft 0,30000000000000004. De converter toont de exact opgeslagen decimale waarde en de afrondfout.

Bijzondere waarden

Zijn alle exponentbits 1, dan is het getal oneindig (mantisse 0) of NaN (mantisse niet 0). Zijn alle exponentbits 0, dan is het getal nul of subnormaal, opgeslagen zonder de voorloop-één.

Veelgestelde vragen

Hoe reken je een decimaal getal om naar IEEE 754?

Je splitst het in een teken, een exponent met grondtal 2 en een mantisse en slaat die op in 8 + 23 bits (float) of 11 + 52 bits (double). De converter doet dat en toont hex en bits.

Waarom is 0,1 als float niet precies 0,1?

0,1 is in het binaire stelsel een oneindige breuk en moet worden afgerond. Als float geeft dat 0,100000001490116…, als double 0,1000000000000000055….

Wat betekenen de bits van een float?

Het eerste bit is het teken, de volgende 8 bits de exponent met bias 127 en de laatste 23 bits de mantisse zonder de voorloop-één.

Bronnen en wettelijke basis

Bijgewerkt op: · Redactioneel beleid

Vergelijkbare tools