Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.
Grenzen von Integer
Hallo,
bei Blatt 8, Aufgabe 8.2 steht bei dem Beispiel zum Überlauf: 2147483640 + 10 = ???-2147483646. Egal wie ich es dreh und rechne, ich bekomme immer was anderes raus. Könnte mir jemand erklären wie ich auf diese -2147483646 komme? Mein Gedankengang soweit: 2147483647 ist ja die letzte Zahl im Integer. Wenn ich nun plus 1 rechne, dann müsste doch einfach -2147483647 raus kommen oder nicht?
Danke schonmal
Java berechnet 2147483647+1 im Zweierkomplement und deshalb kommt dabei -2147483648 heraus. Somit ist auch 2147483640 + 10 = 2147483640 + 7 + 1 + 2 = 2147483647 + 1 + 2 = -2147483648 + 2 = -2147483646.
1 Like
Integer.MIN_VALUE ist -2147483648, nicht -2147483647
1 Like