2.1.3.1.2 Rechenwerk

[gesichtete Version][gesichtete Version]
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(31 dazwischenliegende Versionen von 6 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
<p>
Ein weiterer Bestandteil der CPU ist das Rechenwerk:
</p>
<br />
== Definition: Rechenwerk ==
<p>
<p>
<loop_area type="definition">'''Definition: Rechenwerk'''
<loop_index id="5fa9787606e00">Rechenwerk</loop_index><loop_index id="5fa978bd55c95">ALU</loop_index><loop_index id="5fa978bd55c9c">arithmetic-logical Unit</loop_index><loop_index id="5fa978bd55ca0">arithmetisch-logische Einheit</loop_index>
{{#index:Rechenwerk}}
<loop_area type="definition">
<p>
<p>
Das '''Rechenwerk''' ist ein Bestandteil der CPU und führt vom Steuerwerk in Auftrag gegebene Berechnungen durch. Der Hauptbestandteil des Rechenwerks ist die {{#index:ALU}}ALU ({{#index:arithmetic-logical Unit}}arithmetic-logical Unit, {{#index:arithmetisch-logische Einheit}}arithmetisch-logische Einheit).
Das '''Rechenwerk''' ist ein Bestandteil der CPU und führt vom Steuerwerk in Auftrag gegebene Berechnungen durch. Der Hauptbestandteil des Rechenwerks ist die '''ALU''' (arithmetic-logical Unit, arithmetisch-logische Einheit).
</p>
</loop_area>
</loop_area>
</p>
</p>


<p>
<p>
Damit ist sofort ersichtlich, dass eine Verbindung zwischen Steuerwerk und Rechenwerk exitieren muss. Diese Verbindung ist bidirektional, d.h. das Steuerwerk gibt über entsprechende Steuerleitungen eine zu berechnende Funktion in Auftrag und das Rechenwerk liefert den Status der Berechnung, die sogenannten {{#index:Flags}}Flags, an das Steuerwerk zurück.
Damit ist sofort ersichtlich, dass eine Verbindung zwischen Steuerwerk und Rechenwerk existieren muss. Diese Verbindung ist bidirektional, d.h. das Steuerwerk gibt über entsprechende Steuerleitungen eine zu berechnende Funktion in Auftrag und das Rechenwerk liefert den Status der Berechnung, die sogenannten <loop_index id="5fa9787606e08">Flags</loop_index>Flags, an das Steuerwerk zurück.
</p>
</p>
<br />
<div class="clearer"></div>
== Arbeitsweise des Rechenwerks ==
<p>
<p>
Das folgende Video erläutert die {{#index:Arbeitsweise, Rechenwerk|Rechenwerk, Arbeitsweise}}Arbeitsweise des Rechenwerks, insbesondere auch die {{#index:Zusammenarbeit Rechenwerk-Steuerwerk}}Zusammenarbeit mit dem Steuerwerk.
Das folgende Video erläutert die <loop_index id="5fa9787606e0d">Arbeitsweise, Rechenwerk</loop_index><loop_index id="5fa97876a0fa2">Rechenwerk, Arbeitsweise</loop_index>Arbeitsweise des Rechenwerks, insbesondere auch die <loop_index id="5fa9787606e13">Zusammenarbeit Rechenwerk-Steuerwerk</loop_index>Zusammenarbeit mit dem Steuerwerk.
</p>
</p>
<p>
<p>
<loop_area icon="Video.png" icontext="Video">
<loop_area icon="Video.png" icontext="Video">
<loop_media type="video" title="Arbeitsweise des Rechenwerks (02:26)" description="http://youtu.be/Zsreix2gLkc" copyright="CC-BY" index=true show_copyright=true>{{#ev:youtube|Zsreix2gLkc|700}}</loop_media>
<loop_media type="video" title="Arbeitsweise des Rechenwerks (02:26)" description="http://youtu.be/Zsreix2gLkc" copyright="CC-BY" index=true show_copyright=true id="5fa9787606e18">{{#ev:youtube|Zsreix2gLkc|700}}</loop_media>
</loop_area>
</loop_area>
</p>
</p>
<br />
<p>
<p>
Das Bild der CPU vervollständigt sich langsam:
Das Bild der CPU vervollständigt sich langsam:
</p>
</p>
<p>
<p>
<loop_figure title="Rechenwerk mit ALU" description="" copyright="" index=true show_copyright=false>[[Datei:Cpu4.jpg|700px]]</loop_figure>
<loop_figure title="Rechenwerk mit ALU" description="" copyright="" index=true show_copyright=false id="5fa9787606e1d">[[Datei:Cpu4.jpg|700px]]</loop_figure>
</p>
</p>
<br />
== Vom Rechenwerk bereitgestellte Funktionen ==
<p>
<p>
Wie im Video erläutert, kann das Steuerwerk eine Reihe von Funktionen beim Rechenwerk in Auftrag geben. Diese Funktionen sind u.a.:
Wie im [[Rechenwerk#Arbeitsweise_des_Rechenwerks|Video]] erläutert, kann das Steuerwerk eine Reihe von Funktionen beim Rechenwerk in Auftrag geben. Diese Funktionen sind u.a.:
* Addition der Operanden (A + B)
* Addition der Operanden (A + B)
* Subtraktion (A - B)
* Subtraktion (A - B)
Zeile 34: Zeile 51:
* etc.
* etc.
</p>
</p>
<div class="clearer"></div>
<p>
<p>
<loop_figure title="Funktionen des Rechenwerks, die vom Steuerwerk in Auftrag gegeben werden können" description="" copyright="" index=true show_copyright=false>[[Datei:Cpu5.jpg|700px]]</loop_figure>
<loop_figure title="Funktionen des Rechenwerks, die vom Steuerwerk in Auftrag gegeben werden können" description="" copyright="" index=true show_copyright=false id="5fa9787606e22">[[Datei:Cpu5.jpg|700px]]</loop_figure>
</p>
</p>
<br />
== Flags ==
<p>
<p>
Ebenfalls im Video erläutert wurden die {{#index:Statusbits}}'''Statusbits''' ('''Flags'''), die vom Rechenwerk als Ergebnis jeder {{#index:Operation, Rechenwerk}}Operation an das Steuerwerk übermittelt werden. Diese sind u.a:
Ebenfalls im [[Rechenwerk#Arbeitsweise_des_Rechenwerks|Video]] erläutert wurden die <loop_index id="5fa9787606e27">Statusbits</loop_index>'''Statusbits''' ('''Flags'''), die vom Rechenwerk als Ergebnis jeder <loop_index id="5fa9787606e2c">Operation, Rechenwerk</loop_index>Operation an das Steuerwerk übermittelt werden. Diese sind u.a.
* War letztes Ergebnis gleich Null? (ACC = 0?)
* War letztes Ergebnis gleich Null? (ACC = 0?)
* Waren beide Operanden gleich? (A = B?)
* Waren beide Operanden gleich? (A = B?)
Zeile 46: Zeile 68:
</p>
</p>
<p>
<p>
<loop_figure title="Statusbits des Rechenwerks, die vom Steuerwerk ausgewertet werden können" description="" copyright="" index=true show_copyright=false>[[Datei:Cpu6.jpg|700px]]</loop_figure>
<loop_figure title="Statusbits des Rechenwerks, die vom Steuerwerk ausgewertet werden können" description="" copyright="" index=true show_copyright=false id="5fa9787606e31">[[Datei:Cpu6.jpg|700px]]</loop_figure>
</p>
</p>
<br />
== Aufgabe 1 ==
<p>
<p>
<loop_area type="task">
<loop_area type="task">
<loop_task title="Aufgabe 1: Was ist mit '''größer als'''?">
<loop_task title="Größer als" id="5fa9787606e35">
<p>
<p>
In den Beispielen für mögliche Statusbits (Flags) sieht man u.a. ''"Waren beide Operanden gleich?"'' sowie ''"War A kleiner als B?"''.
In den Beispielen für mögliche Statusbits (Flags) sieht man u.a.<br />
''"Waren beide Operanden gleich?"'' sowie<br />
''"War A kleiner als B?"''.
</p>
</p>
<p>
<p>
Zeile 60: Zeile 88:
</loop_area>
</loop_area>
</p>
</p>
<br />
<hr />
<sub>Diese Seite steht unter der [http://creativecommons.org/licenses/by/3.0/deed.de Creative Commons Namensnennung 3.0 Unported Lizenz] [http://creativecommons.org/licenses/by/3.0/deed.de http://i.creativecommons.org/l/by/3.0/80x15.png]
</sub>

Aktuelle Version vom 9. November 2020, 19:43 Uhr

Ein weiterer Bestandteil der CPU ist das Rechenwerk:


Definition: Rechenwerk

Definition

Das Rechenwerk ist ein Bestandteil der CPU und führt vom Steuerwerk in Auftrag gegebene Berechnungen durch. Der Hauptbestandteil des Rechenwerks ist die ALU (arithmetic-logical Unit, arithmetisch-logische Einheit).

Damit ist sofort ersichtlich, dass eine Verbindung zwischen Steuerwerk und Rechenwerk existieren muss. Diese Verbindung ist bidirektional, d.h. das Steuerwerk gibt über entsprechende Steuerleitungen eine zu berechnende Funktion in Auftrag und das Rechenwerk liefert den Status der Berechnung, die sogenannten Flags, an das Steuerwerk zurück.


Arbeitsweise des Rechenwerks

Das folgende Video erläutert die Arbeitsweise des Rechenwerks, insbesondere auch die Zusammenarbeit mit dem Steuerwerk.

video


Das Bild der CPU vervollständigt sich langsam:

Cpu4.jpg


Vom Rechenwerk bereitgestellte Funktionen

Wie im Video erläutert, kann das Steuerwerk eine Reihe von Funktionen beim Rechenwerk in Auftrag geben. Diese Funktionen sind u.a.:

  • Addition der Operanden (A + B)
  • Subtraktion (A - B)
  • Multiplikation (A * B)
  • Konjunktion (logisches UND, bitweise)
  • Disjunktion (logisches ODER, bitweise)
  • Vergleich von A und B (bitweise)
  • etc.

Cpu5.jpg


Flags

Ebenfalls im Video erläutert wurden die Statusbits (Flags), die vom Rechenwerk als Ergebnis jeder Operation an das Steuerwerk übermittelt werden. Diese sind u.a.

  • War letztes Ergebnis gleich Null? (ACC = 0?)
  • Waren beide Operanden gleich? (A = B?)
  • War A kleiner als B? (A < B?)
  • Gab es einen Überlauf?
  • etc.

Cpu6.jpg


Aufgabe 1

Aufgabe

In den Beispielen für mögliche Statusbits (Flags) sieht man u.a.
"Waren beide Operanden gleich?" sowie
"War A kleiner als B?".

Die dritte Variante "War A größer als B?" muss jedoch nicht vorhanden sein. Warum kann das Steuerwerk auch ohne dieses Statusbit auskommen?