Seite 1 von 1

Signum-Funktion falsch implementiert

Verfasst: 25. April 2010, 12:41
von herw
keine große Sache, doch ärgerlich, wenn man sich darauf verlässt:
Die Beschreibung des Core-Signum-Makros passt nicht zum Verhalten:
sign faulty.jpg
eigentlich sollte die Signum-Funktion beim Eingangswert keinen Event schicken; tut es aber doch, nämlich eine -1.
Meistens ist dies keine große Sache, doch wenn es darauf ankommt schon ärgerlich. Der Fehler lässt sich relativ leicht beseitigen, z.B. wenn man im unteren Teil eine gesonderte Abfrage für negative Werte macht.
Natürlich kann man auch die Beschreibung ändern: +1 für positive Werte, -1 für nicht positive Werte

ciao herw

Re: Signum-Funktion falsch implementiert

Verfasst: 25. April 2010, 19:10
von KlangRaum
Was kommt da beim bekannten Rundungsfehler -0 raus?

Re: Signum-Funktion falsch implementiert

Verfasst: 25. April 2010, 20:48
von herw
KlangRaum hat geschrieben:Was kommt da beim bekannten Rundungsfehler -0 raus?
ich denke, dass -0 kein Rundungsfehler ist, sondern in der Natur von zyklisch angeordneten Zahlenbereichen liegt: bei einer 5-bit Zahl mit Vorzeichen bit wäre zum Beispiel das Problem, dass +15 = 01111(binär) (erstes Bit für das Vorzeichen) bei einer weiteren Addition von 1 auch das Vorzeichen Bit geändert wird; soweit ich mich noch an meine Informatikvorkenntnisse erinnere, muss man nun mit dem Zweierkomplement die Zahl umwandeln, so dass wahrscheinlich 10000(binär) herauskäme und damit -0. Ich bin aber mit Erdbeerbowle abgefüllt, also weiß ich auch nicht oder so ... ::kaffee:: aber ist irgendwie richtig.

ciao herw

Re: Signum-Funktion falsch implementiert

Verfasst: 26. April 2010, 02:19
von KlangRaum
Nu denn ma Prost.... hau wech die Brühe ::kaffee:: *hehehehe*