[gesichtete Version] | [gesichtete Version] |
Keine Bearbeitungszusammenfassung |
Kwastg (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
(15 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
<p> | <p> | ||
Bei der registerindirekten Adressierung bezeichnet der Operand ein Register auf der CPU, der in diesem Register abgelegte Wert bezeichnet die [[Adressierungsarten|effektive Adresse]] der Speicherzelle. | Bei der <loop_index id="5fa9787740b79">registerindirekte Adressierung</loop_index><loop_index id="5fa978bddf270">Adressierung, registerindirekt</loop_index>'''registerindirekten Adressierung''' bezeichnet der '''Operand''' ein '''Register''' auf der CPU, der in diesem Register abgelegte Wert bezeichnet die <loop_index id="5fa9787740b81">effektive Adressierung</loop_index><loop_index id="5fa9787770852">Adressierung, effektiv</loop_index>[[Adressierungsarten|effektive Adresse]] der Speicherzelle. | ||
</p> | </p> | ||
Zeile 16: | Zeile 16: | ||
<p> | <p> | ||
bekannt. Hier erfolgt zweimal die [[Registeradressierung]] des Akkumulator. Um jetzt eine registerindirekte Adressierung anzuzeigen, wird die Schreibweise verändert: | bekannt. Hier erfolgt zweimal die [[Registeradressierung]] des <loop_index id="5fa9787740b85">Akkumulator</loop_index>Akkumulator. Um jetzt eine '''registerindirekte Adressierung''' anzuzeigen, wird die Schreibweise verändert: | ||
</p> | </p> | ||
Zeile 24: | Zeile 24: | ||
<p> | <p> | ||
Die hier eingeführten Klammern um das bezeichnete Register zeigen die Verwendung der registerindirekten Adressierung an. | Die hier eingeführten '''Klammern''' um das bezeichnete Register zeigen die Verwendung der registerindirekten Adressierung an. | ||
</p> | </p> | ||
Zeile 32: | Zeile 32: | ||
<p> | <p> | ||
Falls also im Akkumulator der Wert 80 gespeichert ist, so wird auf Speicherzelle 80 zugegriffen. Zu deren Wert wird 14 addiert | Falls also im Akkumulator der Wert 80 gespeichert ist, so wird auf Speicherzelle 80 zugegriffen. Zu deren Wert wird der in Speicherstelle 14 hinterlegte Wert addiert und das Ergebnis in den Akkumulator geschrieben. | ||
</p> | </p> | ||
<p> | <br /> | ||
<loop_area type="task"> | == Aufgabe 1 == | ||
<p id="Aufgabe 1: Adressierungsarten"> | |||
<loop_area type="task"> | |||
<loop_task title="Adressierungsarten" id="5fa9787740b89"> | |||
<p> | <p> | ||
Welche Bedeutungen haben die folgenden Befehle: | Welche Bedeutungen haben die folgenden Befehle: | ||
Zeile 50: | Zeile 53: | ||
(R1, R2 und R3 bezeichnen Register auf der CPU, siehe [[Gesamtbild eines Von-Neumann-Rechners]].) | (R1, R2 und R3 bezeichnen Register auf der CPU, siehe [[Gesamtbild eines Von-Neumann-Rechners]].) | ||
</p> | </p> | ||
</loop_task> | |||
</loop_area> | </loop_area> | ||
</p> | </p> | ||
Bei der registerindirekten Adressierung bezeichnet der Operand ein Register auf der CPU, der in diesem Register abgelegte Wert bezeichnet die effektive Adresse der Speicherzelle.
Handelt es sich um ein 32-Bit-Register, so stehen damit auch 32 Bit für die Adressierung einer Speicherzelle im Hauptspeicher zur Verfügung. Bei einem 64-Bit-Register entsprechend 64 Bit.
Aus Aufgabe 1 der Seite Aufgaben & Co. zum Befehlsformat ist bereits die Schreibweise
ADD ACC, ACC, 14
bekannt. Hier erfolgt zweimal die Registeradressierung des Akkumulator. Um jetzt eine registerindirekte Adressierung anzuzeigen, wird die Schreibweise verändert:
ADD ACC, (ACC), 14
Die hier eingeführten Klammern um das bezeichnete Register zeigen die Verwendung der registerindirekten Adressierung an.
Die Bedeutung dieses Befehls ist damit: Addiere den Wert der Speicherzelle im Hauptspeicher, die durch den im Register (ACC) gespeicherten Wert addressiert wird, und den in Speicherzelle 14 gespeicherten Wert. Das Ergebnis schreibe in den Akkumulator.
Falls also im Akkumulator der Wert 80 gespeichert ist, so wird auf Speicherzelle 80 zugegriffen. Zu deren Wert wird der in Speicherstelle 14 hinterlegte Wert addiert und das Ergebnis in den Akkumulator geschrieben.
Welche Bedeutungen haben die folgenden Befehle:
Diskutiere die Bedeutungen in deiner Lerngruppe!
(R1, R2 und R3 bezeichnen Register auf der CPU, siehe Gesamtbild eines Von-Neumann-Rechners.)