Mikroarchitektur Flashcards

1
Q

Mikroarchitektur

Liste die Level 5 bis 0 auf

A
  • Level 5: Problem oriented language level
  • Level 4: Assembly language level
  • Level 3: Operating system machine level
  • Level 2: Instruction set architecture level
  • Level 1: Microarchitecture level
  • Level 0: Digital logic level
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Speicherverwaltung

Zu der Speicherverwaltung gehört der Programmtext: Java Byte Code und statische Daten wie Strings Tabellen. Zudem gehören auch dynamische Daten (Heap) dazu. Wie werden Objekte auf dem Heap erzeugt?

A

Zum Beispiel der Befehl “new MyObject” erzeugt ein Objekt auf dem Heap

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Speicherverwaltung

Was enthält der Stack?

A

Er enthält die lokalen Parameter einer Funktion

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Beispiel zu Level 3

Der Assembler erzeugt Byte Code (Level 3).
Sei ILOAD -> 0x15 0x02 das Beispiel.
Was ist der Opcode, der ILOAD als Befehl angibt und was gibt an wo auf dem Stack sich die Variable j befindet?

A

0x15 ist der Opcode, der ILOAD als Befehl angibt und 0x02 gibt an wo auf dem Stack sich die Variable j befindet

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Der Assembler erzeugt Byte Code (Level 3).
Sei ILOAD -> 0x15 0x02 das Beispiel.
0x15 ist der Opcode, der ILOAD als Befehl angibt und 0x02 gibt an wo auf dem Stack sich die Variable j befindet.
Was bedeutet jetzt IADD -> 0x60?

A

0x60 ist der Opcode und es werden die obersten zwei Worte auf dem Stack addiert

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Word-Alignment bei Speicheradressen

Was kann der PC im Speicher adressieren?

A

Er kann beliebige Bytes adressieren

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Word-Alignment bei Speicheradressen

Das MAR gibt nur Vielfache von 4 Byte an und kann nur Wortgrenzen lesen. Was resultiert daraus?

A

Es werden immer 4 Byte auf einmal gelesen, also Bytes 0-3, 4-7, 8-11, 12-15

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

N-Bit und Z-Bit

Wofür steht N = Negative?

A

Es gibt an ob das letzte Ergebnis der ALU negativ war, d.h. MSB war 1

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

N-Bit und Z-Bit

Wofür steht Z = Zero?

A

Es gibt an ob das letzte der Ergebnis der ALU 0 war, d.h. alle Bits waren null

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

N-Bit und Z-Bit

Z-Bit und Subtraktion ergibt einen Vergleich. Rechne a-b wenn Z-Bit 1 und wenn Z-Bit 0.

A
  • Wenn Z-Bit 1 -> a = b
  • Wenn Z-Bit 0 -> a! = b
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

N-Bit und Z-Bit

N-Bit und Subtraktion ergibt einen Vergleich. Rechne a-b wenn N-Bit 1 und wenn N-Bit 0.

A
  • N-Bit 1 -> a < b
  • N-Bit 0 -> a >= b
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

N-Bit und Z-Bit

N-Bit und Z-Bit und Subtraktion ergibt einen Vergleich. Rechne a - b wenn N-Bit 1 oder Z-Bit 1.

A

N-Bit 1 oder Z-Bit 1 -> a <= b

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Shifter

Was passiert bei einem Logical (Left or Right) Shift?

A

Die Bits werden verschoben

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Shifter

Was passiert mit den freigewordenen Bits?

A

Freigewordene Bits werden mit 0 gefüllt

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Shifter

Was für Multiplikationen kann der Logical Shift rechnen?

A

Er kann extrem schnelle Multiplikationen mit 2er-Potenzen rechnen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Shifter

Was passiert mit dem Vorzeichenbit beim Arithmetic Right Shift?

A

Das Vorzeichenbit wird an die freigewordene Stelle kopiert

17
Q

Shifter

Kann der Arithmetic Right Shift Multiplikationen mit 2er Potenzen rechnen?

A

Ja, wenn die Zahl ein Vorzeichen hat

18
Q

Shifter

Wie funktioniert der Arithmetic Left Shift?

A

Er funktioniert wie der Logical Left Shift

19
Q

Sprünge mit Microcode-Befehlen

Die MIC-1 spring nach jedem Microcode Befehl. Option 1 springt an die angegebene Adresse. Option 2 springt in Abhängigkeit des N-Bit. Wann ist Option 2 nützlich?

A

Es ist nützlich nach einem Vergleich wie < oder >=

20
Q

Sprünge mit Microcode-Befehlen

Die MIC-1 spring nach jedem Microcode Befehl. Option 1 springt an die angegebene Adresse. Option 3 springt in Abhängigkeit des Z-Bit. Wann ist Option 3 nützlich?

A

Nach einem Vergleich = oder !=

21
Q

Sprünge mit Microcode-Befehlen

Die MIC-1 spring nach jedem Microcode Befehl. Option 1 springt an die angegebene Adresse. Option 4 springt in Abhängigkeit von beiden Bits. Wann setzt Option 4 ein?

A

Wenn N-Bit oder Z-Bit gesetzt ist

22
Q

Sprünge mit Microcode-Befehlen

Die MIC-1 spring nach jedem Microcode Befehl. Option 1 springt an die angegebene Adresse. Was macht Option 5?

A

Springt an die angegebene Adresse + MBR

23
Q

Sprünge mit Microcode-Befehlen

Bedingte Sprünge sind limitiert und man kann nicht überall hinspringen. Was passiert wenn die Bedingung nicht erfüllt ist?

A

Man springt an die angegebene Adresse und hat eine freie Wahl unter den ersten 256 Adressen

24
Q

Sprünge mit Microcode-Befehlen

Bedingte Sprünge sind limitiert und man kann nicht überall hinspringen. Was passiert wenn die Bedingung erfüllt ist?

A

Man springt an die angegebene Adresse + 256

25
Q

Sprünge mit Microcode-Befehlen

Was ist der Vorteil des Micro-Codes?

A

Der Vorteil des Micro-Codes liegt in seiner Kompaktheit

26
Q

Sprünge mit Microcode-Befehlen

Was ist der Nachteil des Micro-Codes?

A

Micro-Codes Schreiben ist nicht einfach