/media/sda-magnetic/david/Dok-15-2023-11-27/fernuni-hagen/cs-i-ii/old-cs-2-01/2022-02-19-aufgaben/auswendig0021.txt


lb, lbu
lh, lhu
lw
ld*
la*
li*
sb
sh
sw
sd*
move
add
addiu
addi 
sub
mult
multu
div
divu
neg
rem*
abs*
not*
and
andi
or
ori
xor
xori

Datenbewegungsbefehle
arithmetisch logische befehle
Schiebe und Rotationsbefehle
Programmsteuerbefehle
Multimediabefehle
Gleitkommabefehle
Systemsteuerbefehle
Synchronisationsbefehle

Intel 8087, Atam 862 Atmel

Lade- und Speicherarchitektur
Register- Speicherarchitektur
Speicher- Speicherarchitektur
Akkumulatorarchitektur
Stack und Kellerarchitektur

Dreiaddressformat
Zweiaddressformat
Einaddressformat
Nulladdressformat

Einzelbit
Ganzzahl
Gleitkomma 
Multimedia 

signed
unsigned
packed
unpacked
bcd
ascii 

little-endian
big-endian 

byte
halbwort
wort
doppelwort 

ieee-754-std
f = (-1)^s * 1.m * 2^(e-b)

Unmittelbare Addressierung
Registeraddressierung
Direkte Addressierung
Indirekte Addressierung
Indirekte Addressierung mit Autoinkrement/Dekrement
Indirekte ADdresseerung mit Verschiebung
Indizierte Addressierung
Indizierte Addressierung mit Verschiebung

Steuereinheit
1.) Befehlsdekodierer
2.) Funktiosndekodierer

MemToReg
MemWrite
Branch
ALU-Src
ALU-Op
RegDSt 
RegWrite 

Befehlsdekodierer
Funktiosndekodierer
ALU 
Registersatz
Datenspeicher
Befehlsspeicehr
Befehlszähler
Vorzeichenerweiterungseinheit
1.) 1 AND 
2 x Addierer
1 x 2 Bit Shifter
4 x MUX 

Funktiosndekodierer
1.) Func
2.) ALU-Op
3.) ALU-Operation 

ALU
1.) Ergebnis
2.) Null 

AND: 
PCSrc

Registersatz
1.) Lese-Daten-1
2.) Lese-Daten-2
3.) Schreibedaten
4.) Lese-Register-1
5.) Lese-Register-2
6.) Schreiberegister
7.) WE 

Datenspeicher
1.) WE 
2.) Addresse 
3.) Lesedaten
4.) Schreibedaten 

Befehlsspeicher
1.) Addresse 
2.) Lese-Daten 

Befehlszähler
1.) PC (t)
2.) PC (t+1)

Func            ALU-Op              ALU-Operation 
00              x                   010 - add
x1              x                   110 - sub 
1x              100 000 - add       010 - add 


                OpCode          RegDst      RegWrite        Branch      ALU-Src     MemToReg        MemWrite        ALU-Op
r-typ           000 000         1           1               0           0           0   
                0               10

1.) Bedingt
2.) Unbedingt

1.) Absolut: Branch
2.) Befehlszählerindirekt: Jump
3.) Befehlszählerindiziert: Jump Register 

JAL: Jump And Link

eq - equal
ne - not equal 
ge - greater than equal
gt - greater than
le - less than equal
lt - less than 

j, jr, b
jal, jalr
beq, bne
beqz, bnez
blt, ble
bltz, blez
bgt, bge
bgtz, bgez

PC_neu = PC_alt + (i << 2)
PC_neu = PC_alt & (0xf000 0000 | (i << 2))

1.) Befehl holen
2.) Befehl dekodieren
3.) Operanden der ALU bereitstellen
4.) Operation in der ALU ausführen
5.) Operanden in Architekturregister zurückschreibe

1.) IF = Instruction Fetch 
2.) ID = Instruction Decode / Register Fetch 
3.) EX = Execute / Address Calculation
4.) MEM = Memory Access
5.) WB = Write Back 

1.) Datenkonflikte
2.) Steuerflusskonflikte
3.) Struktur und Ressorcenkonflikte

1.) In Order Issue In Order Completion
2.) Out Of Order Issue Out Of Order Completion 

1.) Statisch: 
1.1.) Predict Always Taken
1.2.) Always NT 
1.3.) Backward Taken forward Not Taken
2.) 1 und 2 Bit Prädiktor
2.1.) T, NT 
2.2.) Strongyl weakly