ORIGINAL FRAGE: (Sie können dieses Durcheinander einer Frage lesen, aber ich schlage vor, zu der neu geschriebenen Frage zu springen)
Ich sehe, dass es viele Stellen gibt, an denen die Beschränkung auf 16 EB RAM erwähnt wird ... Ist ein modernes Register jedoch nicht 64-Bit? In diesem Fall sollte 2 ^ 64 auf die Anzahl der möglichen Register verweisen. Da es sich um jeweils 8 Byte handelt, sollte die tatsächliche Grenze 128 EB ((2 ^ 64) * 8 Byte) betragen. Beispiel: 32 Bits gehen zu einem 32X (2 ^ 32) Decoder und die anderen 32 Bits gehen zu dem anderen 32X (2 ^ 32) Decoder, um die richtigen Drähte in jedem Decoder einzuschalten und somit auf ein bestimmtes Register des zuzugreifen (2 ^ 32) ^ 2 Register mit jeweils 64 Datenbits (für den zu speichernden 64-Bit-Bus).
Klar, ich vermisse entweder etwas oder es gibt eine seltsame Chance, dass ich Recht habe und 16 EB ist nicht wirklich die Grenze ...
BEARBEITEN:
Dies wurde vor langer Zeit geschrieben, als ich mir selbst etwas über RAM beibrachte. Ich bin über mehrere Quellen gestolpert, die mir widersprachen (zumindest in meinen Gedanken, aber ich kann mich nicht genau erinnern, warum ich so verwirrt war, eine Frage darüber zu schreiben ) und muss verwirrt worden sein.
Ich möchte meine ursprüngliche Frage lieber noch einmal klären, als sie zu löschen, damit sie für zukünftige Leser nützlicher ist (aber ich brauche keine Antwort, das habe ich mir vor einigen Jahren selbst beigebracht und habe seitdem sogar einen Abschluss in Informatik dann).
DIE FRAGE: (geschrieben in einer Weise, die für andere Menschen nützlicher ist)
Als ich diese Frage stellte, verwendete ich den Begriff "Register" sehr locker, um auf einen Speicherort Bezug zu nehmen, und nahm an, dass der RAM wortadressierbar ist (daher die Verwendung von 8 Bytes für eine 64-Bit-Architektur). Wenn der RAM wortadressierbar wäre, würde jeder Speicherplatz 8 Bytes enthalten und daher 16E · 8 Bytes = 128EB.
Da die meisten modernen Computer die Byteadressierung verwenden, beträgt die tatsächliche Größe jedes Speicherplatzes 1 Byte (8 Bit) und daher 16E * 1 Byte = 16EB.
NÜTZLICHER HINWEIS:
Ein byteadressierbarer RAM erleichtert die Verwaltung, sodass der Unterschied zwischen 32 Bit und 64 Bit nicht so groß ist. Bei einem RAM-Aufruf wird jedoch immer noch das gesamte 64-Bit-Wort abgerufen (indem die letzten 3 Bits der Adresse für ignoriert werden Wenn nur 1 Byte benötigt wird, können die anderen 7 Byte ignoriert werden.
Ein weiterer nützlicher Hinweis: Bei der 64-Bit-Adressierung werden normalerweise nur 40-52 Bit verwendet. Dadurch verbleibt eine ausreichende Menge an maximalem RAM (zwischen 1 TB und 4 PB).