Zahl immer negativ (-Abs ())

Für allgemeine Fragen zur Programmierung mit PureBasic.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

wie eine float gespeichert wird, weiss ich...

also ist ABS() für words sicher, weil ein word so lang ist wie der matrizenteil einer float....
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Froggerprogger
Badmin
Beiträge: 855
Registriert: 08.09.2004 20:02

Beitrag von Froggerprogger »

Bei floats werden 23 Bits für die 'Mantisse' genutzt. Wegen zzgl. dem 'hidden bit' können somit sämtliche Ganzzahlen bis +/- 2^24 = +/- 16777216 dargestellt werden. Danach geht es erstmal in Zweierschritten weiter.

Code: Alles auswählen

x.l = 16777217
Debug x
Debug Abs(x)

x.l = -16777217
Debug x
Debug Abs(x)
!UD2
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

Mantisse? was hat denn ne Gottesanbeterin damit zu tun....? :freak:


...nagut, ich kann ja auch net alles wissen....

aber immerhin schonmal ne gute info von dir, wie weit ABS() auch für longs zuverlässig ist...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
freedimension
Admin
Beiträge: 1987
Registriert: 08.09.2004 13:19
Wohnort: Ludwigsburg
Kontaktdaten:

Beitrag von freedimension »

Kaeru Gaman hat geschrieben:Mantisse? was hat denn ne Gottesanbeterin damit zu tun....? :freak:


...nagut, ich kann ja auch net alles wissen....

aber immerhin schonmal ne gute info von dir, wie weit ABS() auch für longs zuverlässig ist...
Kaeru Gaman hat geschrieben: wie eine float gespeichert wird, weiss ich...
Irgendwas wiederspricht sich hier, findest du nicht auch? ;)

Zur Weiterbildung empfiehlt sich folgende Lektüre:
http://de.wikipedia.org/wiki/Flie%C3%9Fkommazahl

Bild
Beginne jeden Tag als ob es Absicht wäre!
Bild
BILDblog
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

Kaeru Gaman hat geschrieben:wie eine float gespeichert wird, weiss ich...
war meine antwort auf
freedimension hat geschrieben:Floats benutzen, anders als Longs, nur einen Teil der 32 Bits zur Darstellung der eigentlichen Zahl, der Rest geht drauf für Exponent, Vorzeichen ...
also, soviel wusste ich vorher auch schon, und du rückst hier auch nicht mit bit-belegungen raus.

wozu soll ich mir für jede float die bit-belegung merken?

also, für 16bit (das hätte ich mir dann schon vor jahren genau merken müssen)
für 32bit, für 64bit, für 128bit....

...müßig oder?
1) wenn der wertebereich für die Variablen in der Help jeder entwicklungsumgebung drinstehen,
2) wenn ich normalerweise soweit wie möglich mit fixed arbeite statt mit float und
3) wenn bei anderen Programmiersprachen das ABS() funktioniert,
sodass man sich um die bitbelegung von floats in diesem zusammenhang
keinen Kopp machen muss........?
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Antworten