Rechnerstrukturen Flashcards
Was sind Left Shift und Right Shift?
Left Shift: x «_space;y (x wird y-mal nach links geschoben)
Right Shift: x»_space; y (x wird y-mal nach rechts geschoben)
Wie ist ein Von Neumann Rechner aufgebaut?
Rechenwerk, Leitwerk (bilden zusammen CPU), Ein-/Ausgabewerk und Speicherwerk.
Kommunizieren über ein Bussystem.
Wie ist das Rechenwerk aufgebaut und welche Funktionen hat es?
Register, Verknüpfungseinheit(ALU), Zustandsregister (Programmstatuswort PSW)
Rechenoperationen und logische Verknüpfungen mit den Werten aus den Registern
Wie ist das Leitwerk aufgebaut und was sind seine Aufgaben?
Instruktionszähler (program counter PC), Instruktionsregister (instruction register IR), Prozessorstatus (processor status PS), Stapelzeiger (stack pointer SP) und Funktionsentschlüsselung (Microcodeinstruktionstabelle)
Steuert den Verarbeitungsfluss durch Instruktionen und Statussignalen, Interpretiert Instruktionen eines Programmes, Kommunikation mit ALU
Wie ist das Speicherwerk aufgebaut?
Einzelne adressierbare Speicherzellen mit Bitmuster als Inhalt.
Inhalt nicht an Bitmuster erkennbar (Instruktion, Adresse, Daten oder nichts sinnvolles)
Was ist das Ein-/Ausgabewerk?
Schnittstelle zur Außenwelt
Was ist ein Bus?
Elektrische Verbindung zur Kommunikation mehrerer Hardware-Komponenten untereinander.
Besteht aus Steuerleitung, Datenleitung und Adressleitung.
Was passiert in den einzelnen Phasen des Fetch-Decode-Execute-Writeback-Cycle?
- Instruktionsholphase: PC gibt die Arbeitsspeicheradresse für die nächste Instruktion an; laden der Instruktion ins IR; PC um 1 erhöhen
- Instruktionsentschlüsselung: Entschlüsselung der Instruktion mit Mikrocodeinstruktonstabelle
3.Instruktionsausführung: Ausführung der Instruktion durch Ansteuerung der Teile der CPU
4.Ergebnislieferung: Ergebnis der Instruktion an Arbeitsspeicher oder Register zurückgeben
5.Wiederholen
Welche Zustände übergibt das Programmstatuswort PSW?
Wird nach jeder ALU Operation gesetzt.
N: Ergebnis negativ
Z: Ergebnis 0
C: Übertrag (Carry)
P: Parity (even)
O: Überlauf ins Vorzeichen-Bit (Overflow)
E: Vergleich identisch
G: Vergleich größer
Was sind die Merkmale einer CPU?
Zusammenfassung von Leit- und Rechenwerk auf einen Chip.
Datenbusbreite
Adressbusbreite
Registerbreite
Taktfrequenz
Instruktionssatz
Was gibt der opcode an?
Instruktionsart, Adressierungsart und Instruktionsformat
Was sind die verschieden Instruktionsarten(mit Beispiel)?
Transportinstruktionen: Kopiere Registerinhalt von A nach B
Instruktionen für arithmetische Operationen: Rechenarten, Shift left/Right
Instruktionen für logische Operation: AND, OR,…
Vergleiche: Vergleiche A mit B
Programmsprünge: bedingter/unbedingter Sprung
Ein-/Ausgabeinstruktionen: IN, OUT
Sonstiges: Halt
Was sind die verschiedenen Instruktionsformate (mit Beispielen)?
Instruktionen ohne Adresse: Lösche Carry-flag
Ein-Adress-Instruktionen: Addiere ALU mit Speicherzelle
Zwei-Adress-Instruktionen: Addiere eine Speicherzelle mit einer anderen Speicherzelle
Drei-Adress-Instruktionen: Addiere eine Speicherzelle mit einer anderen Speicherzelle und speichere das Ergebnis in einer weiteren Speicherzelle
Was sind die verschiedenen Adressierungsarten (mit Beispielen)?
Register: MOV A, B
Unmittelbar: MOV $0x100, A
Direkt (Absolut): MOV (0x100), A
Indirekt: MOV <0x100>, B oder <a>, B
Indiziert: MOV 0x4(0x100), B
Relativ: JNZ -0x4</a>
Was passiert bei einem Unterprogrammsprung und wie kehrt man zurück ins Hauptprogramm?
Sprung mit CALL + Sprungadresse
Stack Pointer um 1 erhöhen
Wert des PC wird in Arbeitsspecherzelle geschrieben auf die der SP zeigt
Instruktion aus der Arbeitsspeicherzelle der Sprungadresse wird gelesen
Rückkehr mit RET
Speicherzelle auf der SP zeigt wird gelesen und in PC kopiert
SP wird um 1 verringert
nächste Instruktion des Hauptprogramms wird gelesen