Warum sind Speichergrössen keine runde Zahlen?

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Ein Computer arbeitet mit Bits, also 2 Zustände ('0' und '1'). Damit werden auch die Speicherzellen adressiert.

Wenn man nun beispielsweise 5 Bit zum adressieren zur Verfügung hat, kann man damit 2^5 = 32 Speicherzellen adressieren. (Bei 6 Bit wären es 2^6=64 usw)

Man macht also einen Speicher immer so groß, wie man ihn mit den vorhandenen Adressbits adressieren kann.

Eine Ausnahme gibt es jedoch davon. 2^10 würde eigentlich 1024 ergeben. Man redet in diesem Fall oft von 1 Kilobyte adressierbaren Speicher, obwohl Kilo eigentlich 1000 bedeutet und man somit korrekterweise von 1,024 Kilobyte adressierbarem Speicher reden müsste. Das wird in der Praxis nicht immer ganz einheitlich durchgezogen, ob 1000 Byte einem Kilobyte oder 1024 Byte als ein Kilobyte bezeichnet werden. (Analog dazu 1000 Kilobyte ein Megabyte oder 1024 Kilobyte ein Megabyte usw)

PWolff  21.05.2020, 19:29

Die SI-Kommission (Kommission für das internationale Einheitensystem) hat vor ein paar Jahren eigene "Vorsätze" für Zweierpotenzen festgelegt: https://de.wikipedia.org/wiki/Vors%C3%A4tze_f%C3%BCr_Ma%C3%9Feinheiten#Einheitenvors%C3%A4tze_f%C3%BCr_bin%C3%A4re_Vielfache

0
strol  22.05.2020, 11:30
@PWolff

Das weiß ich schon. Jedoch werden diese Regeln der SI-Kommission in der Praxis nicht immer eingehalten

1

Weil alle diese "krummen" Zahlen Potenzen von 2 sind.

z.B. 2^6 = 64

2^10 = 1024

Da Computer mit dem Binärsystem arbeiten, also häufig nur zwei Zustände (0,1) kennen, spielt die 2 als Anzahl der Zustände eine wesentliche Rolle.

Die Stufenzahlen von 2

2^1, 2^2, 2^3, 2^4