Information Technology Reference
In-Depth Information
1
Programmiermodell
Im Programmiermodell ( instruction set architecture , ISA) sind die von einer Reali-
sierung abstrahierten Details definiert, die benötigt werden, um einen Prozessor zu
programmieren. Hierzu gehört eine Beschreibung aller in einem Prozessor zur Ver-
fügung stehenden Befehle, deren Semantik, Codierung und i.Allg. auch deren Zeit-
verhalten. Das Programmiermodell definiert, wie und wo Daten gespeichert und auf
welche Art und Weise sie verarbeitet werden. Es legt die möglichen Betriebsmodi,
die Bedingungen der Aktivierung oder Deaktivierung dieser Betriebsmodi, den
Umgang mit Ausnahmesituationen wie Fehlern usw. fest.
Obwohl das Programmiermodell von Realisierungsdetails abstrahiert, wird es den-
noch in Hardware (oder Software eines virtuellen Prozessors - was jedoch vorerst
nicht weiter berücksichtigt wird) implementiert. Soll ein Prozessor z.B. eine Multip-
likation ausführen können, so muss auch ein Schaltnetz dafür vorgesehen werden.
Umgekehrt wirkt jedoch auch die Realisierbarkeit von Hardware auf das Program-
miermodell zurück. So ist die Division als einschrittig arbeitendes Schaltnetz sehr
kompliziert zu realisieren, weshalb ein entsprechender Befehl in vielen realen Pro-
zessoren nicht vorgesehen ist.
1.1 Datentypen
Damit Daten verarbeitet werden können, müssen sie jeweils entsprechend eines
Datentyps interpretiert werden. In diesem ist festgelegt, aus welcher Wertemenge
ein Datum stammt, welche Bedeutung die Werte der Wertemenge besitzen und wie
sie codiert sind. Die Interpretation eines Datums entsprechend eines solchen Daten-
typs erfolgt bei Ausführung einer Operation, so dass die Anzahl der direkt interpre-
tierbaren Datentypen unmittelbar von der Anzahl der durch einen Prozessor aus-
führbaren Operationen abhängt.
Andere Datentypen müssen durch die direkt interpretierbaren Datentypen repräsen-
tiert werden. Dies geschieht entweder, indem ein komplexer Datentyp als Verbund
direkt interpretierbarer Datentypen zusammengesetzt wird oder indem die Werte des
zu repräsentierenden Datentyps auf die eines repräsentierenden, möglichst direkt
interpretierbaren Datentyps abgebildet werden. Zum Beispiel verfügen herkömmli-
che Prozessoren sehr selten über einen direkt interpretierbaren Datentyp zur Darstel-
lung alphanumerische Zeichenketten ( strings ), weshalb im Bedarfsfall die Einzelzei-
chen ( character ), entsprechend einer Konvention, wie sie im ASCII-Code festge-
schrieben ist, durch ganze sieben Bit breite Zahlen repräsentiert werden. Eine Zei-
Search WWH ::




Custom Search