Wenn ein Computer Anweisungen auf Montageebene interpretiert, werden diese Anweisungen in ihre binären Entsprechungen umgewandelt, damit die CPU sie lesen kann. Wenn die CPU die Anweisungen ausführt, interpretiert sie den Opcode-Teil der Anweisung in einzelne "Mikroprogramme", die ihre Mikrocode- Äquivalente enthalten. Nur um zu wissen, besteht eine vollständige Montageanweisung aus einem Opcode und ggf. zugehörigen Daten (z. B. Registernamen, Speicheradressen).
Mikrocode-Befehle haben einen extrem niedrigen Pegel (mehr als eine Baugruppe) und steuern die tatsächlichen digitalen Signale, die den Logikfluss im Mikroprozessor steuern. Beispielsweise könnte ein Mikrocode-Befehl ein Bedingungscoderegister mit einem neuen Wert aktualisieren oder ein CPU- Register mit einer der ALU- Einheiten verbinden. Komplexere Aufgaben sind möglich, aber dies zeigt Ihnen die allgemeine Vorstellung, wofür der Mikrocode verwendet wird.
Der allgemeine Ablauf von der Kompilierung zur Ausführung ist wie folgt. Die Montageanweisungen werden zusammengestellt (in ihre binären äquivalenten 0 und 1 oder von nun an logische Signale umgewandelt). Diese Logiksignale werden wiederum von der CPU interpretiert und in logisch niedrigere Signale umgewandelt, die den Fluss der CPU anweisen, die bestimmte Anweisung auszuführen. Dies kann einen oder mehrere Taktzyklen dauern, abhängig von der Architektur und dem Design des Prozessors (die meisten Referenzhandbücher für Prozessoren geben an, wie viele Taktzyklen erforderlich sind, um einen bestimmten Befehl auszuführen, wie z. B. diesen ).
All dies geschieht mit einem hart programmierten Mikrocode (physisch im Prozessor in einem ROM eingebettet, der während der Herstellung festgelegt wird), der den Fluss durch die tatsächlichen Low-Level- Logikgatter leitet . Dies stellt eine Schnittstelle zwischen den abstrakten Montageanweisungen und der physikalischen elektrischen Logik im Prozessor bereit.
Zusammenfassend werden also Prozessoranweisungen vom Prozessor zusammengestellt und geladen. Der Prozessor verwendet dann diese Anweisungen, um das Mikroprogramm (in Form eines Mikrocodes) entsprechend dieser bestimmten Anweisung nachzuschlagen, was "tatsächlich" die Anweisung ausführt. Sobald die Mikrocodes für die bestimmte Anweisung ausgeführt wurden (was einen oder mehrere Taktzyklen dauern kann), führt der Prozessor den Mikrocode aus, um die nächste Anweisung abzurufen, und der Zyklus wiederholt sich.