Das eBook Angewandte Mikroelektronik wurde von Hans Lohninger zur Unterstützung verschiedener Lehrveranstaltungen geschrieben. Weitere Informationen finden sie hier.


Befehlssatz

Der Befehlssatz eines Mikroprozessors ist einer der zentralen Punkte, an denen ein Mikroprozessor beurteilt wird. Bei der Implementierung von Befehlssätzen können zwei verschiedene Richtlinien verfolgt werden. Entweder man implementiert viele verschiedene, sehr mächtige und komplexe Befehle, die möglichst gut schon auf Maschinenebene die Verarbeitung von Hochsprachen unter stützen. Man nennt solche Maschinen CISC-Prozessoren (complex instruction setcom puting).

Die andere und neuere Philosophie vertritt die Ansicht, dass man mit wenigen einfachen, jedoch sehr schnell ausführbaren Befehlen (meist in einem Taktzyklus) höhere Rechenleistungen erzielt. Man nennt Prozessoren nach diesem Konzept RISC-Prozessoren (reduced instruction set computing).

Für den Programmierer, der einen Mikroprozessor in Assembler-Sprache programmieren möchte, ist es nicht nur wichtig, den Befehlssatz zu kennen, sondern auch das so genannte 'Programmiermodell'. Dieses Programmiermodell enthält alle im Prozessor vorhandenen Ressourcen und Einschränkungen, z.B. Art und Anzahl der Register, die Belegung der Memory-Map, Interrupteinrichtungen, spezielle Steuerungen für externe Speicher (MMU, DMA) oder eventuell vorhandene I/O-Möglichkeiten.

Sieht man sich den Befehlssatz eines Mikroprozessors genauer an, so kann man zwei Ebenen unterscheiden: 1) die Funktionalität eines einzelnen Befehls und 2) die Adressierungsmöglichkeiten des betrachteten Befehls. Wünschenswert für die Adressierungsmöglichkeiten eines Befehlssatzes ist die so genannte Orthogonalität . Ein orthogonaler Befehlssatz bedeutet, dass jeder Befehl auf jedes Register angewendet werden kann und jede Adressierungsart zugelassen ist. Die Orthogonalität ist bei vielen Prozessoren, die in neuerer Zeit von Grund auf neu entworfen worden sind, in hohem Maße vorhanden (z.B. M68000 oder NS32032), bei älteren Prozessoren, die zum Teil abwärtskompatibel zum Vorgänger sind, musste naturgemäß auf Orthogonalität des Befehlssatzes verzichtet werden (z.B. Z80 oder i8086).


Last Update: 2008-05-31