3.0 🚧 Rechenwerk

Methode Reziprokes Video

[Wikipedia: Reziprokes Lehren]
Teilen Sie Ihre Klasse in Gruppen zu je 4 SuS ein. Alle SuS schauen sich das Video an.
SoS 1 fasst das gesehene schriftlich zusammen. Die Zusammenfassung wird anschließend den Gruppenmitgliedern vorgetragen.
SoS 2 formuliert Fragen zum Video. Die Gruppenmitglieder beantworten die Fragen .
SoS 3 achtet auf ungeklärte schwierige Fragen. Dies können Fragen sein, die im Verlauf des Videos auftauchen, oder Fragen von Schülerin 2.
SoS 4 stellt Vermutungen über den folgenden Abschnitt an. Diese Vermutungen werden in der Gruppe diskutiert und dokumentiert.
Die Gruppe präsentiert ihre Ergebnisse.

3.1 ALU

[Wikipedia: Arithmetisch-logische Einheit]

Fragen und Aufgaben

  1. Wofür steht die Abkürzung ALU?
  2. Nennen Sie 2 Beispiele für Arithmetische Operationen.
  3. Nennen Sie 2 Beispiele für Logische Operationen.
  4. Was bewirkt der “S”-Zusatz bei Operationen?
  5. Wie ist ein ALU-Befehl aufgebaut und wo wird er bei der Bearbeitung gespeichert?
  6. Welche “Nebenergebnisse” kann die ALU erzeugen, wo werden sie bei Bedarf gespeichert?
  7. Nennen Sie 3 ALU-Nebenergebnisse und ihre Ermittlung.
  8. Zeichnen Sie ein Blockschaltbild für den Befehl adds R2,R1,R0 mit den notwendigen Baugruppen und deren Verbindungen.
  9. Zeichnen Sie ein Blockschaltbild für den Befehl subs R2,R1,#150 mit den notwendigen Baugruppen und deren Verbindungen.
Lösungen
  1. Arithmetic Logic Unit
  2. add, sub, mul, div, Einer-Komplement, Zweier-Komplement
  3. and, or, xor
  4. Die Flags z.B. N,Z,C im PSR werden gesetzt
  5. Operation, Zielregister und Operanden (Register oder Konstanten). Im Instruction Register (IR)
  6. Die Flags z.B. N,Z,C werden im Prozess Status Register (PSR) gespeichert
  7. N ist das Negative-Flag und bedeutet bei vorzeichenbehafteter Betrachtung ein negatives Ergebnis. Es ist Bit 31 (MSB) des Ergebnisses.
    Z ist das Zero-Flag, wenn das Ergebnis null ist, wird es gesetzt. Es ist !Oder über alle Bits, also 1 gdw. alle Bits 0 sind.
    C ist das Carry-Flag, wird z.B. bei einer Addition gesetzt wenn das Ergebnis größer als die größte Ausgabe-Zahl der ALU ist. Z.B. bei 8Bit ALU 128+128 gibt 256 also C-Flag gesetzt und als Ergebnis 0.
Verbindungen
A8: Zwecks Übersichtlichkeit wurden die ALU-Eingänge getauscht
Verbindungen
A9: Zwecks Übersichtlichkeit wurden die ALU-Eingänge getauscht

3.2 Barrelshifter

[Wikipedia: Barrel-Shifter]

Fragen und Aufgaben

  1. Was macht ein Barrelshifter?
  2. R1 habe den Wert 10. Welchen Wert hat R1 nach dem Befehl lsl R1,R1,#1 ?
  3. R1 habe den Wert 10. Welchen Wert hat R1 nach dem Befehl lsr R1,R1,#1 ?
  4. Neben LSR gibt es auch ASR, worin besteht der Unterschied und wofür ist ASR nütze?
Lösungen
  1. Er verschiebt die Bits der Eingabe um einen Wert, kann mit Multiplexer realisiert werden.
  2. #1 nach links schieben ist mit 2 multiplizieren: 10*2= 20
  3. #1 nach rechts schieben ist durch 2 teilen: 10/2= 5
  4. LSR (Logical Shift Right) schiebt von links 0en nach. ASR (Arithmetical Shift Right) schiebt von links das MSB (Most Significant Bit), also das Vorzeichen nach. Negative Zahlen bleiben dadurch negativ.