Die CPU greift entsprechend dem Inhalt des Befehlszählers auf den Hauptspeicher zu, und die abgerufenen Informationen sind die Befehle. Im Befehlszähler wird die Adresse der Einheit gespeichert, in der sich der nächste Befehl befindet. Bevor das Programm mit der Ausführung beginnt, muss seine Startadresse in den Befehlszähler eingegeben werden.
Die Betriebsumgebung dieses Artikels: Windows 10-System, Thinkpad T480-Computer.
Die CPU greift entsprechend dem Inhalt des Befehlszählers auf den Hauptspeicher zu, und die abgerufenen Informationen sind die Befehle.
Einführung in den Befehlszähler:
Der Programmzähler ist ein Ort, an dem die Adresse der Einheit gespeichert wird, in der sich die nächste Anweisung befindet.
Beim Ausführen einer Anweisung muss die Anweisung zunächst entsprechend der im PC gespeicherten Anweisungsadresse aus dem Speicher in das Anweisungsregister abgerufen werden. Dieser Vorgang wird als „Anweisungsabruf“ bezeichnet. Gleichzeitig wird die Adresse im PC entweder automatisch um 1 erhöht oder die Adresse des nächsten Befehls wird durch den Verzweigungszeiger vorgegeben. Anschließend werden die Anweisungen analysiert und ausgeführt. Schließen Sie die Ausführung der ersten Anweisung ab und rufen Sie dann die Adresse der zweiten Anweisung entsprechend dem PC ab, und so weiter, indem Sie jede Anweisung ausführen.
Um sicherzustellen, dass das Programm (verstanden als Prozess im Betriebssystem) kontinuierlich ausgeführt werden kann, muss der Prozessor über Mittel verfügen, um die Adresse der nächsten Anweisung zu ermitteln. Der Programmzähler spielt diese Rolle und wird daher oft als Befehlszähler bezeichnet. Bevor das Programm mit der Ausführung beginnt, muss seine Startadresse, also die Adresse der Speichereinheit, in der sich der erste Befehl des Programms befindet, an den Programmzähler gesendet werden, sodass der Inhalt des Programmzählers die Adresse eines Befehls ist aus dem Gedächtnis geholt.
Wenn eine Anweisung ausgeführt wird, ändert der Prozessor automatisch den Inhalt des PCs, d. h. jedes Mal, wenn eine Anweisung ausgeführt wird, erhöht sich der PC um einen Betrag, der der Anzahl der in der Anweisung enthaltenen Bytes entspricht dass es immer die Adresse des nächsten auszuführenden Befehls behält. Da die meisten Anweisungen sequentiell ausgeführt werden, besteht der Änderungsprozess normalerweise darin, einfach 1 zum PC hinzuzufügen.
Wenn Sie jedoch auf eine Übertragungsanweisung wie eine JMP-Anweisung (Sprung, vollständiger Name in der Fremdsprache: JUMP) stoßen, muss die Adresse der nachfolgenden Anweisung (d. h. der Inhalt des PCs) aus dem Adressfeld in abgerufen werden das Befehlsregister. In diesem Fall wird der nächste aus dem Speicher abgerufene Befehl durch einen Verzweigungsbefehl angegeben und nicht wie üblich nacheinander abgerufen. Daher sollte die Struktur des Programmzählers eine Struktur mit zwei Funktionen sein: Registrieren von Informationen und Zählen.
(Teilen von Lernvideos: Programmiervideo)
Das obige ist der detaillierte Inhalt vonWelche Informationen ruft die CPU beim Zugriff auf den Hauptspeicher basierend auf dem Inhalt des Befehlszählers ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!