Wenn ein 32-Bit-Mikroprozessor einen Adressraum von 24 Bit hat, warum wird dann die Antwort auf die maximale Anzahl von Adressen (2 ^ 24) in Byte und nicht in Bits angegeben?

788
Crazierinzane

Ich arbeite daran für Hausaufgaben und es scheint, dass alle meine Klassenkameraden und verschiedene Online-Quellen sagen, dass die einfache Berechnung von 2 ^ 24-Bit ~ 16.000.000 Bytes anstelle von Bits ergibt. Warum ist das? Ich verstehe das so, dass die Antwort ~ 16.000.000-Bits sein würde, die in ~ 2.000.000-Byte umgewandelt werden würden, da 1 Byte aus 8 Bits besteht.

0
Jede Adresse bezieht sich auf ein ganzes Byte, kein Bit. Der Speicher ist nicht * bit * -adressierbar, sondern * byte * -adressierbar. bwDraco vor 8 Jahren 4
@DragonLord, nur wenn Sie von modernen Systemen sprechen. Alte Computer (etwa: PDP-10-Ära) waren typischerweise wortadressierbar. Mark vor 8 Jahren 0

2 Antworten auf die Frage

0
grawity

Wie @DragonLord sagt, können Sie nicht einzelne Bits ansprechen . Jede Adresse zeigt am Anfang eines Bytes, und alle Operationen arbeiten mit mindestens einer Byte-Einheit.

Wenn das Gerät wortadressiert wurde (wie es in der Vergangenheit auch schon der Fall war), würde sich auch dessen Speichergröße ähnlich äußern:

Die Grundausstattung des PDP-8 hatte einen Hauptspeicher von 4.096 12-Bit-Wörtern

Ah, es ist also so, als würde man mit statistischen Sätzen arbeiten, bei denen die Bits in den adressierbaren Bytes die Elemente in den Sätzen sind und der maximal adressierbare Raum die Familie von Sätzen enthält. Crazierinzane vor 8 Jahren 0
0
Mokubai

Ein weiterer Grund für das Adressieren von Bytes statt von Bits besteht darin, dass dadurch die Datenmenge, die gespeichert und abgerufen werden kann, unmittelbar erhöht wird. Es verbessert auch die allgemeine Speicherbandbreite, da Daten immer in mehreren Byteblöcken statt bitweise aus dem Speicher abgerufen werden. Der Zugriff auf den Speicher für ein einzelnes Bit ist ineffizient, wenn Sie wissen, dass der kleinste nützliche Block, den Sie für die Ausführung eines nützlichen Objekts benötigen, ein einzelnes Byte ist.

Selbst wenn Computer mit geringen Speichermengen und niedrigen Adresszeilenzahlen ausgestattet waren, wäre die Möglichkeit, ein Byte zu einem Zeitpunkt zu ziehen, eine Leistungssteigerung gewesen, und der Zugriff auf 16 Megabyte hätte bedeuten, dass viel größere Programme erstellt werden könnten, als wenn Sie dies nur hätten Zugriff auf 16 Megabit (2 Megabyte) Speicher.