4

Speicher kann byte adressierbar oder Wort (2 Bytes, 4 Bytes usw.) adressierbar sein (bitte korrigieren Sie mich, wenn ich hier falsch liege).in welchen Fällen Speicher ist Byte oder Wort adressierbar und warum

Ist diese (da sie adressierbar oder wortadressierbar ist) von der Prozessorarchitektur abhängig? Wenn ja, in welchen Fällen gehen wir für Byte adressierbaren Speicher und in welchen Fällen gehen wir für wortadressierbaren Speicher?

Und was sind die Gründe dafür? Mit anderen Worten, warum ist das Speicherbyte adressierbar (in den Fällen, in denen es so ist) und warum das Wort adressierbar ist (falls es so ist) und die Gründe dafür. Ich sah einige Fragen über Byte adressierbaren Speicher auf dieser Seite, aber keine Antwort auf diese Fragen zur Verfügung gestellt.

+0

Moderne Allzweck-CPUs sind in der Regel byteadressierbar. DSPs können wortadressierbar sein. Einige historische CPUs waren wortadressierbar, manchmal mit seltsamen Wortgrößen (IIRC, die PDP-11 waren Unix und C wurden ursprünglich geschrieben, hatten 18-Bit-Wörter und wortadressierbaren Speicher). – ninjalj

+0

möglich duplizieren http://StackOverflow.com/q/1586944/570609 – kch

Antwort

4

Offensichtlich muss eine andere Software mit Daten/Variablen verschiedener Typen und Größen arbeiten und oft muss mit mehreren verschiedenen im selben Code gearbeitet werden.

Der Zugriff auf diese Variablen direkt und als Ganzes, unabhängig von der Größe, vereinfacht die Programmierung, da Sie nicht z. B. 4 8-Bit-Bytes zu einem 32-Bit-Wert zusammenfügen müssen 8-Bit-Werte von einem 32-Bit-Speicherort.

Es gibt Prozessoren, die hinsichtlich der nativ unterstützten Datengrößen nicht sehr flexibel sind. Zum Beispiel digitale Fixpunkt-Signalprozessoren. Einige können nur direkt auf Speicher als 16-Bit-Wörter und 32-Bit-Doppelwörter zugreifen. Ich denke, dass das Fehlen von 8-Bit-Byte-Adressierung in ihnen kein großes Problem ist, da erwartet wird, dass sie viele Signalverarbeitungen durchführen, anstatt vielseitig zu sein und für allgemeine Berechnungen geeignet zu sein, und Signalabtastungen sind selten 8-Bit (das ist zu grob), meistens sind sie 16-Bit.

Die Unterstützung von weniger Datengrößen und anderen Funktionen in Hardware macht diese Hardware einfacher und billiger (auch in Bezug auf den Energieverbrauch), was wichtig wird, wenn wir über Tausende und Abermillionen von Geräten sprechen.

Verschiedene Probleme brauchen unterschiedliche Lösungen, daher die Vielfalt.

Verwandte Themen