[gesichtete Version] | [gesichtete Version] |
Keine Bearbeitungszusammenfassung |
Kwastg (Diskussion | Beiträge) |
||
(21 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
<p> | |||
Neben der Festlegung der Namen der einzelnen Befehle (bzw. deren <loop_index id="5fa97845b77e5">binäre Codierung, Befehl</loop_index><loop_index id="5fa9789dd88c1">Befehl, binäre Codierung</loop_index>binärer Codierung), ist die Festlegung des sogenannten <loop_index id="5fa97845b77ed">Befehlsformat</loop_index>'''Befehlsformats''' eine wichtige Entscheidung bei der Entwicklung einer CPU. | |||
</p> | |||
<p> | |||
Das '''Befehlsformat''' definiert für jeden einzelnen Befehl, wie dieser codiert ist. Im Video [http://youtu.be/cX5XLc9e_g4 Vom Quellcode zum Prozessor] entspricht dies dem aus drei Teilen bestehende Format: | Das '''Befehlsformat''' definiert für jeden einzelnen Befehl, wie dieser codiert ist. Im Video [http://youtu.be/cX5XLc9e_g4 Vom Quellcode zum Prozessor] entspricht dies dem aus drei Teilen bestehende Format: | ||
</p> | |||
<Befehl><Num><Operand> | <p> | ||
<span style="font-family:Courier"> | |||
<loop_index id="5fa97845b77f2">Operand</loop_index><Befehl><Num><Operand> | |||
</span> | |||
</p> | |||
Dabei wird <Befehl> mit drei Bit codiert, <Num> mit einem Bit und <Operand> mit sechs Bit. Die im Video gezeigte Reserve dient lediglich dazu, die gesamte Befehlslänge auf ein Vielfaches eines Bytes (= acht Bit) zu ergänzen. Die Befehlslänge aus dem Beispiel im Video beträgt somit für alle Befehle 16 Bit. | <p> | ||
Dabei wird <Befehl> mit drei Bit codiert, <Num> mit einem Bit und <Operand> mit sechs Bit. Die im Video gezeigte Reserve dient lediglich dazu, die gesamte Befehlslänge auf ein Vielfaches eines Bytes (= acht Bit) zu ergänzen. Die Befehlslänge aus dem Beispiel im [http://youtu.be/cX5XLc9e_g4 Video] beträgt somit für alle Befehle 16 Bit. | |||
</p> | |||
<loop_area type="definition"> | <br /> | ||
== Definition: Opcode == | |||
<p> | |||
<loop_index id="5fa97845b77f6">Opcode</loop_index><loop_index id="5fa97845e57ee">Steuerinformation</loop_index> | |||
<loop_area type="definition"> | |||
<p> | |||
Unter dem '''Opcode''' eines Befehls versteht man eine binäre Codierung, aus der sowohl der Befehl, als auch zusätzlich benötigte Steuerinformationen hervorgehen. | |||
</p> | |||
</loop_area> | </loop_area> | ||
</p> | |||
Der Opcode für das Beispiel zum Einadressformat besteht aus <Befehl> und <Num>, insgesamt also aus vier Bit. | <p> | ||
Der Opcode für das obige Beispiel zum <loop_index id="5fa97845b77fb">Einadressformat</loop_index>Einadressformat besteht aus <Befehl> und <Num>, insgesamt also aus vier Bit. Das eine Bit von <Num> ermöglicht die Unterscheidung von zwei Steueroptionen. | |||
</p> | |||
Bei den Befehlsformaten werden verschiedene Klassifizierungen unterschieden, <cite>Brinkschulte+et | <br /> | ||
== Klassifizierungen == | |||
<p> | |||
Bei den Befehlsformaten werden verschiedene <loop_index id="5fa97845b77ff">Klassifizierung, Befehlsformat</loop_index>Klassifizierungen unterschieden, <cite id="5fa97845b7803">Brinkschulte+et+al.+2010</cite> gibt diese Klassen ausführlich an. An dieser Stelle werden lediglich drei unterschiedliche Varianten betrachtet: | |||
* Einadressformat | |||
* <loop_index id="5fa97845b7807">Zweiadressformat</loop_index>Zweiadressformat | |||
* <loop_index id="5fa97845b780a">Dreiadressformat</loop_index>Dreiadressformat | |||
</p> | |||
<br /> | <br /> | ||
< | |||
< | == Aufgabe 1 == | ||
</ | <p> | ||
<loop_area type="task"> | |||
<loop_task title="Klassifizierungen " id="5fa97845b780e"> | |||
<p> | |||
Welche Klassifizierungen bzgl. der Befehlsformate unterscheiden <cite id="5fa97845b7812">Brinkschulte+et+al.+2010</cite>? | |||
</p> | |||
<p> | |||
<small>Studierende sind oftmals berechtigt, eine PDF-Version dieses Buches ohne entstehende Kosten [[Hinweise für Studierende#Downloadbare Bücher von Springerlink|über ihre Hochschulen von Springerlink zu beziehen.]]</small> | |||
</p> | |||
</loop_task> | |||
</loop_area> | |||
</p> |
Neben der Festlegung der Namen der einzelnen Befehle (bzw. deren binärer Codierung), ist die Festlegung des sogenannten Befehlsformats eine wichtige Entscheidung bei der Entwicklung einer CPU.
Das Befehlsformat definiert für jeden einzelnen Befehl, wie dieser codiert ist. Im Video Vom Quellcode zum Prozessor entspricht dies dem aus drei Teilen bestehende Format:
<Befehl><Num><Operand>
Dabei wird <Befehl> mit drei Bit codiert, <Num> mit einem Bit und <Operand> mit sechs Bit. Die im Video gezeigte Reserve dient lediglich dazu, die gesamte Befehlslänge auf ein Vielfaches eines Bytes (= acht Bit) zu ergänzen. Die Befehlslänge aus dem Beispiel im Video beträgt somit für alle Befehle 16 Bit.
Unter dem Opcode eines Befehls versteht man eine binäre Codierung, aus der sowohl der Befehl, als auch zusätzlich benötigte Steuerinformationen hervorgehen.
Der Opcode für das obige Beispiel zum Einadressformat besteht aus <Befehl> und <Num>, insgesamt also aus vier Bit. Das eine Bit von <Num> ermöglicht die Unterscheidung von zwei Steueroptionen.
Bei den Befehlsformaten werden verschiedene Klassifizierungen unterschieden, Brinkschulte et al. 2010 gibt diese Klassen ausführlich an. An dieser Stelle werden lediglich drei unterschiedliche Varianten betrachtet:
Welche Klassifizierungen bzgl. der Befehlsformate unterscheiden Brinkschulte et al. 2010?
Studierende sind oftmals berechtigt, eine PDF-Version dieses Buches ohne entstehende Kosten über ihre Hochschulen von Springerlink zu beziehen.