Wat heb je zelf al bedacht? Hoe denk je dat bitshiften in zijn werk gaat, met een real als uitgangspunt? Als je eenmaal een methode bedacht of gekozen hebt, hoe ga je bewijzen dat het resultaat in alle gevallen correct is?
Je zou het getal kunnen vermenigvuldigen met 100, en het resultaat opslaan in het laagst woord (bits "achter de komma" en boven de grootte van het woord vallen vanzelf weg), en het getal delen door 655.36, waarbij je het resultaat opslaan in het hoogste woord.
Voorbeeld:
getal: 1234.56
1234.56 * 100 = 123456 (decimaal) = 1 E240 (hex), wordt dus E240 (hex) oftewel 57920 (decimaal) in het laagst woord
1234.56 / 655.36 ~= 1.884, dus 1 in het hoogste woord.
Controle: 1 * 655.36 + 57920 / 100 = 1234.56
Correct! Nu is de vraag of deze methode in alle gevallen correct is...
[Bericht gewijzigd door
SparkyGSX
op zaterdag 7 december 2013 15:36:35
(57%)