Wertebereich von boolean

Lestas89

Bekanntes Mitglied
Im Buch "Grundkurs Java" von Dietmar Abts steht, dass der Wertebereich von boolean 8 Bit beträgt. Wie kann das denn sein, wenn boolesche Werte nur zwei Werte annehmen können. Ist das ein Druckfehler? Müsste boolean nicht einen Wertebereich von 1 Bit haben?
 
Hi,
grundsätzlich hast du recht, ein boolean würde durch 1 bit (0 od. 1) abgebildet werden können. Je nach Prozessorarchitektur ist aber 1 Byte die kleinste addressierbare Einheit, und somit die Minimalgröße für jeden Datentyp. Manchmal kann ein Boolean sogar 4 Byte bzw. 8 Byte belegen, da auf einigen Prozessorarchitekturen (x86/x4) die Zugriffsgeschwindigkeit somit erhöht wird.
 
Hi,
grundsätzlich hast du recht, ein boolean würde durch 1 bit (0 od. 1) abgebildet werden können. Je nach Prozessorarchitektur ist aber 1 Byte die kleinste addressierbare Einheit, und somit die Minimalgröße für jeden Datentyp. Manchmal kann ein Boolean sogar 4 Byte bzw. 8 Byte belegen, da auf einigen Prozessorarchitekturen (x86/x4) die Zugriffsgeschwindigkeit somit erhöht wird.

Naja es liegt mehr daran, dass sich die Sprache nicht die Mühe macht ein Boolean richtig zu unterstürzen weil ihm Speicherplatz egal ist. Natürlich kann ich auch auf einem 64bit System jederzeit jedes Bit eines Speichers einzeln lesen und schreiben. Wäre ja auch traurig wenn das nicht gehen würde....

Gruß

Claus
 

Zurück
Oben