Wer kann mir diesen Mathematiker -Witz erklären?

... komplette Frage anzeigen

6 Antworten

Es geht dabei nicht um Mathematik, sondern mehr um Informatik.

Ein Computer kann grundsätzlich nicht mit unendlich großen Zahlen rechnen. Er muss sie schließlich irgendwo abspeichern und da ist irgendwann Schluss.

Es gibt mehrere Zahlen-Datentypen, die alle einen verschiedenen Wertebereich haben.

Eine (vorzeichenbehaftete) 8-Bit-Ganzzahl hat beispielsweise einen Wertebereich von -2⁷ bis 2⁷ - 1.

Eine vorzeichenbehaftete 16-Bit-Ganzzahl hat einen Wertebereich von

-2¹⁵ = -32.768 bis 2¹⁵ - 1 = 32.767

Wenn eine 16-Bit-Ganzzahl den maximalen Wert 32.767 hat und dann darauf 1 dazuaddiert wird, kommt es zu einem arithmetischen Überlauf.

(32.767)₁₀ = (0111 1111 1111 1111)₂

Wenn nun auf diese Zahl 1 addiert wird, wird das 16. Bit (das das Vorzeichen darstellt) erhöht und die 15 anderen Bits sind wieder 0.

Also:

(32.768)₁₀ = (1000 ...)₂ = (-32.768)₁₀

Zu beachten ist hierbei, dass mit dem Zweierkomplement gerechnet wird.

0₂ wäre dezimal natürlich auch 0₁₀, aber der Computer speichert Zahlen eben streng genommen nicht binär, sondern eben im Zweierkomplement.

Daher läuft der Zähler des Schäfchenzählers über und ist wieder -32.768. ^^

Ich hoffe, ich konnte dir helfen; wenn du noch Fragen hast, kommentiere einfach. 

LG Willibergi 

Antwort bewerten Vielen Dank für Deine Bewertung

Ist wohl eher ein Informatiker-Witz. Es gibt für verschiedene Zahlenbereiche verschiedene Datentypen.

z. B. gibt es den Datentyp Integer (so kenne ich ihn damals von Pascal), der umfasst den Zahlenbereich der ganzen Zahlen von -32.768 bis 32.767 (d. h. von -2^15 bis 2^15-1).

Kommt man über die 32.767 hinaus, geht die Rechnung quasi bei -32.768 weiter...

also z. B. 32.767+1=-32.768

Antwort bewerten Vielen Dank für Deine Bewertung

Sieht mir danach aus, als wäre das ein Informatikerwitz. 32.768 ist 2^16. Es scheint mir, als ob der Informatiker die in einem bestimmten Datentyp darstellbaren Zahlen abzählt.

Antwort bewerten Vielen Dank für Deine Bewertung

Das ist eher ein Informatiker-Witz. In Java z.B. kannst du in einer short-Variablen Ganzzahlen von -32768 ... 32767 abspeichern. Eine short-Variable hat 16 Bit, du kannst also 2^16 = 65536 Werte, das ganze positiv und negativ, daher ergibt sich der Wertebereich

https://de.wikibooks.org/wiki/Java_Standard:_Primitive_Datentypen#Was_sind_Primitive_Datentypen.3F

Wenn du nun mit einer Short-Variablen 32767 + 1 rechnest, dann erhälst du als Ergebnis -32768. Denn der korrekte Wert 32768 passt nicht mehr in die Short-Variable, also geht's von vorne los. Das ganze nennt sich "arithmetischer Überlauf"

https://de.wikipedia.org/wiki/Arithmetischer_%C3%9Cberlauf

Der Witz ist aber meiner Meinung nach eher überschaubar lustig... ;)

Antwort bewerten Vielen Dank für Deine Bewertung

Das ist ein Informatikerwitz: die Zahlen auf dem Computer mit Vorzeichen und 16Bit (leicht veraltet) haben einen maximalen Wert: 32767, oder binär 0111 1111 1111 1111. Die nächste Zahl 1000 0000 0000 0000 steht allerdings für die Kleinste, da das erste Bit das Vorzeichen angibt.

Antwort bewerten Vielen Dank für Deine Bewertung

Das ist ein Informatik witz kein Mathe witz.

es geht hier um den Wert von Integer (ganze zahlen, gehen von -32768 bis + 32767

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von JustVicky
29.08.2016, 17:22

Mein Berufsschullehrer hat uns diesen Witz im Matheunterricht gezeigt, und keiner hat es verstanden, daher ging ich davon aus aus, dass es ein Mathematiker Witz ist. Danke für deine richtigstellung und danke für deine Antwort, jetzt hab ich es endlic mal begriffen :D

1

Was möchtest Du wissen?