MByte Speicher die CPU adressieren kann?
Eine 8 Bit CPU besitzt einen 16 Bit breiten Adressbus und einen 8 bit breiten Datenbus.
Die kleinste Adressierbare Einheit ist ein 8 Bit Datenwort.
a) Wie viel MByte Speicher kann die CPU adressieren?
=> Wie berechnet man dies?
Bitte es so erklären, dass es auch ein Anfänger in der Informatik versteht. Danke!
1 Antwort
Ein 16-Bit-Adressbus kann 2^16 = 65.536 verschiedene Adressen ausgeben. Wenn jedes dort gespeicherte Wort 8 Bit = 1 Byte breit ist, kann die CPU also 65.536 Byte = 64 Kilobyte adressieren (eigentlich wären es nach aktueller Terminologie nicht 64 "Kilobyte", sondern 64 "Kibibyte").
Kann eine 8-Bit CPU überhaupt einen 16 Bit breiten Adressbus haben?
Ja, das kann sie. Und fast alle 8-Bit-CPUs haben den auch, denn sonst könnten sie nur 256 Byte Speicher ansprechen, das wäre etwas wenig.
Nochmal zum Verständnis:
"Ein 16-Bit-Adressbus kann 2^16 = 65.536 verschiedene Adressen ausgeben. Wenn jedes dort gespeicherte Wort 8 Bit = 1 Byte breit ist, kann die CPU also 65.536 Byte = 64 Kilobyte adressieren"
Wenn jedes dort gespeicherte Wort dort 16 Bit = 2 Byte breit wäre, statt 8 Bit, dann kann die CPU mit ihrem 16-Bit-Adressbus 2^16 * 2 / 2^10 = 128 Kilobyte adressieren.
Richtig?
"Eine 8 Bit CPU besitzt einen 16 Bit breiten Adressbus und einen 8 bit breiten Datenbus. Die kleinste Adressierbare Einheit ist ein 8 Bit Datenwort."
D. h. im Endeffekt, dass man eine 8 Bit CPU hat und einen 8 bit breiten Datenbus hat lauft Aufgabenstellung hat keine Auswirkung darauf, wie viel Speicher die CPU adressieren kann.
Entscheidend ist nur, dass ich einen 16 Bit breiten Adressbus habe und die kleinste Adressierbare Einheit im Speicher ein 8 Bit Datenwort ist.
Ja, allerdings müsste die 8-Bit-CPU dazu einen 16-Bit-Datenbus haben, und dann wäre sie wahrscheinlich eine 16-Bit-CPU.
Es gibt natürlich auch Möglichkeiten, eine 8-Bit-CPU mehr Speicher ansprechen zu lassen. Nennt sich Paging, also das Umschalten zwischen mehreren Speicher-"Seiten".
Entscheidend ist nur, dass ich einen 16 Bit breiten Adressbus habe und die kleinste Adressierbare Einheit im Speicher ein 8 Bit Datenwort ist.
Ja.
D. h. 64 Kilobyte 2^-10 = 0,0625 MByte
Die CPU kann 0,0625 MByte adressieren.