4.1 Ablaufsteuerung
Die Ablaufsteuerung erzeugt alle internen und externen Steuersignale für das Holen und Ausführen von Befehlen. Jeder Befehl erzeugt eine bestimmte Reihe von Signalen (auch Sequenz genannt) die nötig sind, um diesen Befehl auszuführen. Deshalb spricht man bei der Ablaufsteuerung auch vom Steuer-Sequenzer. Die Steuersequenzen aller möglichen Befehle sind in einem Programmspeicher abgespeichert. Je nach Prozessor Hersteller können diese Sequenzen unterschiedlich sein.
4.2 Befehlszähl-Einrichtung und Adressregister
Im Speicher sind die Befehle hintereinander abgespeichert. Die Befehlszähl-einrichtung steuert die Reihenfolge, in der die Befehle abgearbeitet werden. Sie besitzt meist einen 16-Bit Zähler (siehe Bild 2), der nach jedem Befehl um eins erhöht wird. Somit liefert er die Adresse des Speichers an dem sich der nächsten Befehl befindet. Der Adressregister wird zu Beginn jeder Befehlsholphase mit dem Inhalt des Zählers geladen.
4.3 Befehlsregister mit Befehlsdecoder
Der über den Adressregister ermittelte Befehl gelangt in den Befehlsregister. Im Befehlsdecoder wird ermittelt, welchem Befehl diese Daten entsprechen. Das Ergebnis dieser Decodierung wird schließlich der Ablaufssteuerung übermittelt.
4.4 Arithmetische und Logische Einheit mit Akkumulator und Statusregister
Die Arithmetische Logikeinheit, auch kurz ALU genannt, ist sozusagen der Taschenrechner für die CPU. Die eigentliche Verarbeitung der Daten erfolgt hier.
Man nennt die Daten, die verarbeitet werden auch Operanden. Die ALU kann einen oder zwei Operanden verarbeiten. Wie und in welcher Form die Verarbeitung erfolgt, das heißt welche Operation in der ALU ausgeführt wird, hängt von dem gerade auszuführenden Befehl ab. Man unterscheidet zwischen arithmetischen und logischen Operationen.
Zur ALU gehört das Status-Register und der Akkumulator (kurz Akku). Für die Zuführung der beiden Operatoren besitzt die ALU zwei Eingangskanäle. Der eine Operand gelangt über den Daten - Bus(Register) in die ALU, der andere über den Akkumulator(ein Spezieller Register). Das Ergebnis einer arithmetischen oder logischen Operation in der ALU wird im Akku abgelegt. Das Ergebnis, das man nach der Prozedur bekommt, kann man gleich in die nächste mit einbeziehen. Der Datenverkehr von und zu den Eingabe- und Ausgabeeinheiten verläuft über den Akkumulator. Der Akkumulator hat somit eine zentrale Funktion im Prozessor.
Beispiele:
Arithmetische Operationen:
- z.B. eine Addition zweier Operanden (01010010 + 10000100 = 11010110)
Logische Operationen:
- z.B. eine Bit-für-Bit-UND-Verknüpfung (10011101 & 11000111 = 10000101)
Im Statusregister wird durch Setzten oder Löschen einzelner Bits angezeigt, ob bei der Rechenoperation eine Besonderheiten Aufgetreten ist.
Nachfolgend sind Bezeichnung und Bedeutung einiger Statusbits zusammengefasst:
Carry - Bit (CY) = 1: Überlauf ist aufgetreten (d.h. Anzahl der zugewiesenen Bits Überschritten)
Carry - Bit= 0 : kein Überlauf
Zero - Bit (Z) = 1: Ergebnis ist null
Zero - Bit= 0: Ergebnis ist ungleich null
Negativ - Bit (N) = 1: Ergebnis ist Negativ
Negativ - Bit= 0: Ergebnis ist Positiv
Parity - Bit (P) = 1: Anzahl der Bits mit dem Wert 1 ist geradzahlig
Parity - Bit= 0: Anzahl der Bits mit dem Wert 1 ist ungeradzahlig
|