Complex Instruction Set Computer
Complex Instruction Set Computer (CISC; engl. für Rechner mit komplexem Befehlssatz) ist eine Designphilosophie für Computerprozessoren. Die Bezeichnung ist ein Retronym, das mit Einführung der RISC-Prozessoren geprägt wurde. Die Intel-x86-Prozessorfamilie (bis einschließlich 80386) gehört zu den bekanntesten Vertretern dieses Konzepts.
Entwicklung
Anfänglich wurden die Befehlssätze der Prozessoren immer umfangreicher, um auch komplexere Rechenschritte „auf einmal“ mit nur einem Maschinenbefehl ausführen zu können, um dadurch schneller und leistungsfähiger zu werden. Zugleich wurde dadurch jedoch auch der Prozessor komplex und schwierig weiterzuentwickeln – und auch schwieriger zu programmieren. Viele Hersteller setzten zunächst auf die Mikroprogrammierung der Rechenwerke, um Problemfälle leichter korrigieren zu können – dennoch nahm die Komplexität immer weiter zu.
Die Bezeichnung CISC wurde in den 1970er Jahren von IBM gewählt, um klassische Befehlssätze von einer neuartigen Form abzugrenzen, dem Reduced Instruction Set Computer (RISC). Ein CISC-Befehlssatz zeichnet sich durch viele, verhältnismäßig mächtige Einzelbefehle aus, wohingegen RISC zugunsten einer hohen Ausführungsgeschwindigkeit und eines niedrigeren Decodieraufwands weitgehend auf komplexe Befehle verzichtet.
CPUs mit CISC-Befehlssatz waren lange Zeit mikroprogrammiert. Heute findet man kaum noch mikroprogrammierte CISC-CPUs. Ab dem Pentium Pro verfügen die Intel-Prozessoren über eine vorgeschaltete Funktionseinheit, die komplexe Befehle in RISC-ähnliche einfache Befehle übersetzt, die ein RISC-ähnlicher CPU-Kern dann ausführt. Je nach Hersteller und CPU werden diese Einheiten ROP, Micro-Op oder µOp genannt.
Beispiele für CPUs mit CISC-Befehlssatz sind der Intel 8086, der Intel 80386, der Motorola 68000, der Zilog Z80 und die CPUs der System-z-Reihe von IBM.