Zurück zum Inhaltsverzeichnis

Befehle, Prozessor

von Christian Herta

Bevor die Komponenten des Prozessors beschrieben werden, muss der Begriff Befehl näher erläutert werden

Befehle

Zur Verarbeitung der Daten müssen Computer Anweisungen erhalten, wie diese zu bearbeiten sind. Diese maschinennahen Anweisungen werden Befehle genannt.

Befehle setzen sich zusammen aus dem Operator und dem oder den Operanden.
Der Operator beschreibt die Tätigkeit, die ausgeführt werden soll (z.B. Addition). Dieser wird durch eine binäre Zahl codiert und Operationscode genannt.

Die Operanden sind die Elemente, auf welche die Operationen ausgeführt werden.

Je nach Anzahl der Operanden unterscheidet man zwischen Ein-, Zwei- und Drei-Operanden Befehle.
Operanden sind entweder Speicheradressen oder Direktoperanden (also Zahlen).

Beispielsweise sind für eine Additionsoperation, unter anderem, folgende Angaben möglich:
  • Direkte Angabe zweier Zahlen, die addiert werden sollen (Direktoperanden).
  • Angabe zweier Adressen, in denen die zu addierenden Zahlen stehen.
Der Operationscode unterscheidet sich in den beiden Fällen, sodass dadurch klar wird, ob es sich bei den Operanden um Adressen oder Direktoperanden handelt.

Komponenten des Prozessors

Die wesentlichen Komponenten eines Prozessors sind:

  • Register
  • Prozessorbus
  • Leitwerk
  • Rechenwerk

Komponenten des Prozessors

Register

Register dienen zur kurzfristigen, schnellen Speicherung eines Datums (oder mehrerer). In den Prozessorregistern können Daten (wie Adressen, Zahlen, Operationscode) kurzfristig gespeichert werden.

Prozessorbus

Der Prozessorbus verbindet die Komponenten des Prozessors.

Leitwerk

Das Leitwerk, auch Steuerwerk (control unit) genannt, steuert die Komponenten des Rechners, wobei es die Maschinenbefehle schrittweise interpretiert.

Um diese Aufgabe zu erfüllen, benötigt es interne Register:
  • Den Befehlszähler (program counter) für die Adresse des nächsten auszuführenden Befehls,
  • Das Befehlsregister (instruction register) für den aktuellen Maschinenbefehl.
  • Das Statusregister für Rückmeldungen aus Teilen des Computers (Rechenwerk, Leitwerk etc.), welche die Weiterführung des Programmablaufes beeinflussen können.
Die Maschinenbefehle werden vom Leitwerk interpretiert und in Steuersignale umgewandelt, welche das gewünschte Verhalten (auf Gatter-Ebene) des Computers bewirken. Die Steuersignale, die zu einem Zeitpunkt vorhanden sind, werden auch als Steuerwort bezeichnet.

Für die Umsetzung der Maschinenbefehle in Steuerworte gibt es eine spezielle Einheit, welche im Steuerwerk integriert ist. Der Input in diese Einheit stammt aus dem Operationsteil des Maschinenbefehls.
Für die Erzeugung der Steuerworte aus den Maschinenbefehlen (Dekodierung der Maschinenbefehlen) gibt es zwei Prinzipien:
  • Feste Verdrahtung(hard wired)
  • Mikroprogrammierung: In diesem Fall enthält das Leitwerk ein Teilwerk, das Mikroprogrammwerk, eine Art Rechner im Rechner. Dieses kann programmiert werden und somit können je nach Mikroprogramm unterschiedliche Steuerworte für einen Befehl generiert werden.

Rechenwerk

Die Aufgabe des Rechenwerks (execution oder calculation unit) ist es, arithmetische und logische Operationen durchzuführen. Diese werden vor allem in den ersten beiden Arbeitsschritten des Datumszustandes benötigt. Dazu enthält das Rechenwerk arithmetische und logische Einheiten (arithmetic logic unit), die sogenannte ALU, und geeignete Register zur Zwischenspeicherung der Operanden.

Ein in vielen Computern vorhandenes Register ist der Akkumulator.
Für diesen gibt es spezielle Befehle, die Operationen mit diesem Register ausführen. Es ist das einzige Register, in welchem Rechendaten von der ALU prozessorintern abgelegt werden können. Bei jeder arithmetischen oder logischen Operation wird es angesprochen. Am Ende der Operation enthält dieses auch das Ergebnis und bei Beginn einen Eingangsoperanden, falls mehr als ein Operand verarbeitet wird.
Beispiel Addition:
Ein Ein-Operanden Befehl addiert den Operanden zum Akkumulator und speichert das Ergebnis wiederum im Akkumulator.
Von der Eigenschaft, die Ergebnisse aufzusammeln, hat das Register den Namen Akkumulator.

Moderne 16/32/64 Bit Prozessoren haben allerdings (mit Ausnahmen) keinen speziellen Akkumulator. Die Aufgabe des Akkumulators übernehmen bei ihnen die normalen Datenregister.


Normalerweise kann die ALU als arithmetische Operation nur addieren, da die anderen arithmetischen Operationen (Subtraktion, Multiplikation und Division) auf eine Addition zurückgeführt werden können (vgl. Addiererschaltungen).



Weshalb logische und arithmetische Operationen mit derselben Einheit ausgeführt werden können, wird in Rahmen der Übung behandelt.



Zurück zum Inhaltsverzeichnis

Home Klick hier!



Copyright (C) 2005 Christian Herta. Alle Rechte vorbehalten! All rights reserved!