Einzelnen Beitrag anzeigen

Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#32

AW: Ungewöhnliche ungültige Gleitkommaoperation

  Alt 24. Apr 2014, 01:54
Jede Wette, dass dabei das selbe raus kommt wie bei x := 637; , selbst ohne das Round().

4927 lässt sich kaum in den 11 Bits des Exponenten eines Doubles darstellen, womit deine Zahl dort effektiv 0 ist. Der Exponent geht bei Double von -308 bis +308, ein Bruchteil deines. Demnach sollte dort eine denormalisierte Gleitkommazahl vorliegen, welche durchaus auch schon mal komische Dinge in der FPU tun. Je nach dem was um diese Berechnung herum ähnliches passiert ist, kann das durchaus schon sein.

Edit: Für einen Extended geht das, aber IMHO gibt es die doch auf 64 Bit CPUs gar nicht mehr. Was ist da los?
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)

Geändert von Medium (24. Apr 2014 um 02:02 Uhr)
  Mit Zitat antworten Zitat