Befehlssatz und Assembler

Welche Aussage zu Verfahren ist richtig, bei denen Rechenbefehle wie „add eax, [rbx]“ bei x86 Werte im Speicher direkt verwenden können?

  1. ADie Befehlszahl lässt sich klein halten, doch ein einzelner Befehl umfasst Speicherlesen und Rechnen
  2. BEs ist ein Verfahren, das Load-Store-Architektur genannt wird
  3. CRechnungen mit Speicherwerten sind stets in derselben Zeit abgeschlossen wie Rechnungen zwischen Registern
Antwort und Erläuterung anzeigen

Antwort: A. Die Befehlszahl lässt sich klein halten, doch ein einzelner Befehl umfasst Speicherlesen und Rechnen

Bei x86 kann ein einziger Befehl „aus dem Speicher lesen und addieren“; dieselbe Verarbeitung erfordert in RISC-V die zwei Befehle lw und add. Befehlszahl und Code werden tendenziell kleiner, doch ist der Arbeitsumfang je Befehl uneinheitlich, was die Pipeline-Verarbeitung erschwert. Heutige x86-CPUs teilen solche Befehle intern in einfache Operationen (Mikrooperationen) wie Load und Addition auf und führen diese aus.

Dieses Thema üben Zur Themenseite

Weitere Fragen zu Befehlssatz und Assembler

  1. Welche Erklärung, wie heutige leistungsfähige x86-CPUs komplexe Befehle intern ausführen, ist richtig?
  2. Welche Befehle fügt die M-Erweiterung von RISC-V dem Basis-Ganzzahlbefehlssatz hinzu?
  3. Was ist der Hauptzweck der C-Erweiterung (komprimierte Befehle) von RISC-V?
  4. Was geschieht im Allgemeinen, wenn „a * b“ (Multiplikation zweier int) in C für eine RV32I-CPU ohne M-Erweiterung kompiliert wird?
  5. Welche Aussage zum Branch Delay Slot (Regel, dass der Befehl unmittelbar nach einem Verzweigungsbefehl unabhängig davon ausgeführt wird, ob verzweigt wird), wie er beim früheren MIPS u. a. bestand, ist richtig?