/media/sda-magnetic/david/Extern-Magnetic-2022-06-29/Extern01/Dokumente-11-2021-07-05/informatik-math/2021-12-25-learn/auswendig0001.txt


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

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

Lade und Speicherarchitektur
Speicher-Speicher-Architektur
Register-Speicher-Architektur
Akkumulator-Architektur
Stack und Kellerarchitektur

Dreiaddressformat
Zweiaddressformt
Einaddressformat
Nulladdressformat

Einzelbit
Ganzzahl
Gleitkomma 
Multimedia 

Byte 
Halbwort
Wort 
Doppelwort 

signed
unsigned
packed
unpacked
bcd
ascii 

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

Intel 8087, atam862, atmel 

Direktwertaddressierung
Registeraddressierung
Direkte Addressierung
Indirekte Addressierung
Indirekte Addressierung mit Autoinkrement/Dekrement
Indirekte Addressierung mit Verschiebung
Indizierte Addressierung
Indizierte Addressierung mit Verschiebung 

Steuereinheit
1.) Befehlsdekodierer
2.) Funktionsdekodierer 

MemToReg
MemWrite 
Branch 
ALU-SRC
ALU-Op
RegDst 
RegWrite 

1.) Befehlsdekodierer
2.) Funtktionsdekodierer
3.) ALU
4.) Registersatz 
5.) Datenspeicher
6.) Befehlsspeicher
7.) Befehlszähler
8.) Vorzeichenerweiterungseinheit
9.) 1 x AND 
10.) 2 x Addierer
11.) 1 x 2 Bit Shifter
12.) 4 x MUX 

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

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

ALU
1.) ALU-Ergebnis
2.) Null 

Funktionsdekodierer
1.) Func 
2.) ALU-OP
3.) ALU-Operation 

Befehlsspeicher
1.) Lesedaten 
2.) Addresse 

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ählerrelativ: Jump
3.) Befehlszählerindirekt: Jump Register 

jal: Jump and Link 

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

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

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

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

IF - Instruction Fetch 
ID - Instruction Decode/Register Fetch 
EX - Execute Address Calculation 
MEM - Memory Access 
WB - Write Back 

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

1.) Statisches Scheduling: In Order Issue in order completion 
2.) Dynamisches: Out Of Order Issue Out Of order completion 

1.) Statische Sprungvorhersage:
1.1.) Predict always taken 
1.2.) Predict always not taken 
1.3.) Predict backward taken, forward not taken 
2.) Dynamisch: 1 und 2 Bit Predictor
2.1.) Taken, not taken 
2.1.) Strongly Taken, weakly taken, weakly not taken, strongly not taken