Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Prüfungen im Bachelor-Studium (1. - 5. Semester) » gra » Aufgabe 1: Umformung
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige Überarbeitung | ||
pruefungen:bachelor:gra:loesungws13 [25.01.2015 18:49] – Alpha2000 | pruefungen:bachelor:gra:loesungws13 [23.09.2015 19:42] (aktuell) – since | ||
---|---|---|---|
Zeile 7: | Zeile 7: | ||
int i = 0 | int i = 0 | ||
| | ||
- | Lin1: goto Lcond1 | + | Lin1: goto Lcond2 |
Lin2: | Lin2: | ||
int nextadr = i+1; | int nextadr = i+1; | ||
Zeile 18: | Zeile 18: | ||
skip: | skip: | ||
i++; | i++; | ||
+ | n1 = n - 1; | ||
| | ||
LCond2: if(i < n1) goto Lin2 | LCond2: if(i < n1) goto Lin2 | ||
n--; | n--; | ||
- | n1--; | + | |
- | | + | |
Lcon1: if(n>1 ) goto Lin1 | Lcon1: if(n>1 ) goto Lin1 | ||
| | ||
Zeile 118: | Zeile 118: | ||
Vorteil Stack: Rekursion möglich | Vorteil Stack: Rekursion möglich | ||
+ | |||
Nachteil Stack: Langsam | Nachteil Stack: Langsam | ||
Vorteil Register: Schnell | Vorteil Register: Schnell | ||
+ | |||
Nachteil Register: Anzahl stark begrenzt / Keine Rekursion möglich | Nachteil Register: Anzahl stark begrenzt / Keine Rekursion möglich | ||
Vorteil Speicher: Anzahl nur durch Kapazität des Speichers begrenzt | Vorteil Speicher: Anzahl nur durch Kapazität des Speichers begrenzt | ||
+ | |||
Nachteil Speicher: Langsam / Keine Rekursion möglich | Nachteil Speicher: Langsam / Keine Rekursion möglich | ||
Zeile 131: | Zeile 134: | ||
< | < | ||
sub $4, %esp | sub $4, %esp | ||
- | mov value, %esp | + | mov value, |
</ | </ | ||
Pop: | Pop: | ||
< | < | ||
- | mov %esp, value | + | mov (%esp), address |
add $4, %esp | add $4, %esp | ||
</ | </ | ||
Zeile 174: | Zeile 177: | ||
2) | 2) | ||
- | geg.: Cache-Nutzdatengröße = 256 KiB = 2¹⁰ | + | geg.: |
- | Blockgröße = 64 Bytes = 2⁶ Bytes = 2⁹ | + | Cache-Nutzdatengröße = 256 KiB = 2^10 * 2^8 = 2^18 |
+ | |||
+ | Blockgröße = 64 Bytes = 2⁶ Bytes | ||
+ | |||
+ | 8-Fach = 2^3 | ||
+ | |||
+ | Rechnung | ||
+ | |||
+ | 2^18(nutzdaten) / 2^6(blockgröse) = 2^12 Blöcke | ||
+ | |||
+ | 2^12(blöcke) / 2^3(assoz) | ||
- | → 2⁷ blöcke → 2⁴ Mengen | ||
3) | 3) | ||
+ | |||
+ | 2^4 Mengen | ||
Man bräuchte mehr nun Adressvergleicher um die Einträge im Cache zu addressieren. | Man bräuchte mehr nun Adressvergleicher um die Einträge im Cache zu addressieren. |