Einzelnen Beitrag anzeigen

Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#1

Mit Über- und Unterläufen rechnen

  Alt 6. Jul 2008, 21:40
Hallo zusammen,

ich habe folgende simple Aufgabe vor mir liegen und komme einfach nicht aufs richtige Ergebnis:

Code:
unsigned int a, b;
unsigned long result;

b = 20000;
a = 50000;

result = 65536 + (b - a);
"unsigned int" ist 16 Bit groß, hat also einen Wertebereich von 0 - 65535. In der Klammer kommt es zum Unterlauf, da 20000 - 50000 negativ ist. Aber ich weiß nicht, wie man damit genau rechnet.

Wie groß hier ein long-Datentyp ist, weiß ich nicht, aber da sollte es nicht zu einem Überlauf kommen.

Könnt ihr mir sagen, wie man mit Unterläufen bzw. wenn es geht auch mit Überläufen rechnen kann?

Einfache Dinge wie 65535 + 1 = 0 bekomme ich hin, aber sobald das so große Zahlen sind, ist mir das zu komplex. *g*

Grüße
  Mit Zitat antworten Zitat