Frage

Die Frage I bedeutet bitten, die Mantisse betroffen, nicht die " „Ziffern auf der Summe von zwei negativen Schwimmern fehlen.

Da die Mantisse eine variable Präzision hat, wie kann man sagen, wenn man die aktuelle Präzision Einstellung der Mantisse übergelaufen ist? Oder von der proaktiven Seite, wie kann man sagen, wenn Mantisse Präzision Überlauf wahrscheinlich ist?

Mit freundlichen Grüßen, Bruce.

War es hilfreich?

Lösung

Es gibt ein paar numerischen Methoden, um zu sehen, ob Sie Präzision verlieren werden, aber das Endergebnis ist, dass Sie die Definition von Präzision besser verstehen müssen.

-4939600281397002,2812

und

-4939600281397002,2812000000000000

ist nicht die gleiche Anzahl.

Wenn Sie fügen

-2234,6016114467412141

und

-4939600281397002,2812

zusammen, die richtig Ausgang wird nur 20 Stellen an Präzision, da die zusätzlichen 12 Stellen in der kleineren Zahl bedeutungslos gegeben sind, dass die 12 ähnlich großen Ziffern in der größeren Zahl sind unbekannt . Sie können bedeuten, dass sie Null sind, aber wenn das der Fall ist, dann müssen Sie erklären ausdrücklich, sich als solche zu sein, und ein Nummerierungssystem verwenden, das damit umgehen kann -. Der Computer an Verständnis implizite Absichten nicht gut ist

Was Erkennen, wenn Sie dieses Problem haben werden, alles, was Sie tun müssen, ist herauszufinden, ob sie den gleichen Exponenten (unter der Annahme einer normalisierten Mantisse +/- 1 oder ähnliche binäre Äquivalent) haben. Wenn sie nicht normalisiert sind, dann werden Sie brauchen, um sie zu normalisieren zu vergleichen oder einen etwas komplexeren Vergleich mit dem Exponenten verwenden.

Präzision und Genauigkeit ist nicht die gleiche Sache ...

-Adam

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top