Befehlssatz und Assembler
Welche Eigenschaft des RISC-V-Registers x0 (zero) ist richtig?
- ABeim Lesen ergibt sich stets 0, und Schreiben ändert den Wert nicht
- BEs enthält die Rücksprungadresse einer Funktion
- CEs dient als Flag, das anzeigt, ob das Ergebnis der vorherigen Rechnung 0 war
Antwort und Erläuterung anzeigen
Antwort: A. Beim Lesen ergibt sich stets 0, und Schreiben ändert den Wert nicht
x0 ist ein besonderes Register, das stets 0 liefert; Schreibzugriffe werden ignoriert. Da die Konstante 0 immer verfügbar ist, ergeben sich Verwendungen wie „add rd, rs, x0“ zum Kopieren eines Werts, „addi rd, x0, 5“ zum Setzen einer Konstanten oder x0 als Ziel, wenn das Ergebnis verworfen werden soll; zusätzliche Spezialbefehle sind nicht nötig. Die Rücksprungadresse steht in x1 (ra). RISC-V hat keine Ergebnis-Flags, sondern Verzweigungsbefehle vergleichen zwei Register direkt.