it-swarm.com.de

Was ist der Mindestwert einer 32-Bit-Ganzzahl mit Vorzeichen?

Was ist der Mindestwert einer 32-Bit-Ganzzahl mit Vorzeichen? Dies ist zufällig die Sicherheitsfrage, um ein Konto bei [dieser Website] zu erstellen (Bearbeiten: Link ist jetzt Malware) neugierig und gelangweilt). 

Ich nahm an, sie sprachen über ein typisches 32-Bit-Int, das Zahlen in der Größenordnung von 2,147,483,647 speichern kann. Aber als ich -2147483647 ausprobierte, wurde die Frage falsch gestellt. Ich habe verschiedene Varianten ausprobiert, wie zB -2,147,483,647, aber nichts funktioniert ... 

Verstehe ich die Frage falsch oder ist mit der Website etwas nicht in Ordnung?

PS Ich habe auch vorgeschlagen, -2.147.483.648, wie vorgeschlagen

Hier ist ein Bild enter image description here

13
java

Die am häufigsten verwendete Größe einer Ganzzahl beträgt 32 Bit. Das letzte Bit dient zur Unterscheidung von positiven und negativen Zahlen. Wenn das letzte Bit NICHT gesetzt ist, ist die Zahl positiv. Daher ist die maximale positive Zahl 0x7FFFFFFF = (1<<31)-1 = 2147483647 (das letzte Bit ist nicht gesetzt).

Für die negativen Zahlen wird die Zweierkomplementnotation häufig verwendet. Sie können das Gegenstück der positiven Zahl identifizieren, indem Sie alle Bits invertieren und 1 hinzufügen. Das Gegenstück für die maximale Ganzzahl ist 0x80000001, jedoch ist NICHT die minimale Zahl.

Die minimale Zahl in der Zweierkomplementschreibweise lautet 0x80000000 = -2147483648. Die interessante Tatsache bei dieser Zahl ist, dass sie mit ihrem eigenen Komplement übereinstimmt, dh das Invertieren aller Bits führt zu 0x7FFFFFFF und dem Addieren von 1 ergibt 0x80000000, was dem Original entspricht Nummer.

Mehr zur Zweierkomplementnotation in wikipedia .

25
Tim

Signierte 32-Bit-Ganzzahlen können zu -2,147,483,648 gehen.

5
Zack Newsham

Vielleicht fragt der ITS nach der Zahl in der binären oder hexadezimalen Form?

0
schreibikus