Ich bin verwirrt von so vielen Begriffen, über die mein Lehrer spricht, wie Wort
, Byte-Adressierung
und Speicherort
.
Ich war der Meinung, dass ein 32-Bit-Prozessor
bis zu 2^32 Bits
adressieren kann, was 4,29 x 10^9 Bits (NICHT BYTES)
entspricht.
So denke ich jetzt:
Der Speicher
ist wie ein Array
von Eimern
jeweils von 1 Byte Länge
.
Wenn wir von Byte-Adressierung
sprechen (was ich vermute, am häufigsten vorkommt), ist jedes Charakter
1 Byte
und wird aus dem ersten Eimer abgerufen (sagen wir zum Beispiel). für Int
werden die nächsten 4 Bytes
in Little-Endian-Reihenfolge
zusammengefügt, um den Ganzzahl
-Wert zu berechnen.
Also sehe ich jeden Speicher als 8 Bits
1 Byte, der bis zu 2^8 Speicherorte
liefern kann, was weit weniger ist als das, was die CPU
adressieren kann.
Hier gibt es ein sehr grundlegendes Missverständnis meinerseits, das Experten vielleicht in einfachen Worten erklären können, damit ein angehender CS-Hauptstudent es einmal für immer verstehen kann.
Ich habe verschiedene Seiten gelesen, einschließlich dieser über Wort und hier wird die Einheit der Adressauflösung
als 8b
für ARM
angegeben, was meine Verwirrung noch steigert.