Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: Bug ?! - kein Bug ! Kategorie: Programmierung (von AndrĂ© H. - 19.12.2004 14:21)
Als Antwort auf Re: Bug ?! von Jörg - 10.12.2004 10:13
Ich nutze:
C-Control II Unit, C164CI-ControllerBoard, CC2-Application-Board, CC2-StarterBoard, CC2-ReglerBoard, OSOPT V3.0
Hallo Jörg,

> Das kann's nicht sein. 9 * 100.000, 4 * 1.000.000 ... klappt ja!
> Wird wohl schon irgendwo ein Bug sein. Naja, läuft ja jetzt.

Hier ist keinerlei Bug! Das ist mittlerweile auch ausfĂĽhrlich in den FAQs beschrieben.
Die CC2 benutzt als Standardwertebereich Integer, also 16Bit !
Byte-Werte werden bei der Berechnung auch als Integer behandelt.
Long und Float hingegen nur, wenn eine entsprechener Wert oder Variable
in der Berechnung beteiligt ist.

Wenn Du also zwei Integerwerte multiplizierst, erhälst Du auch immer einen Integerwert,
egal wohin Du das Ergenis speicherst.
Wenn nun zwei Integervariablen den Wert 24 und 17000 haben und Du diese multiplizierst,
erhälst Du 14784 und nicht 408000. Diese beiden Zahlen sehen in HEX so aus:
14784= 0x39C0, 408000= 0x000639C0 .
Erst wenn einer der zu multiplizierenden Werte als Long definiert ist, wird auchals Long gerechnet.
Ich hoffe, so wird es klarer.
Mehr dazu in den FAQs, da ich im Forum schon genug zu diesem Thema geschrieben habe.

MfG André H.


Antworten bitte nur ins Forum!
Fragen per EMail auf Forum-Postings werden nicht beantwortet!

Das macht meine Heizung gerade


    Antwort schreiben


Antworten: