Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Prüfungen im Bachelor-Studium (1. - 5. Semester) » gra » Aufgabe 1: Allgemein
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige ÜberarbeitungLetzte ÜberarbeitungBeide Seiten, nächste Überarbeitung | ||
pruefungen:bachelor:gra:loesungss14 [30.01.2015 16:01] – Alpha2000 | pruefungen:bachelor:gra:loesungss14 [23.09.2015 08:39] – ThiloK | ||
---|---|---|---|
Zeile 17: | Zeile 17: | ||
Pseudocode: | Pseudocode: | ||
+ | |||
+ | < | ||
+ | |||
+ | if(eingabe < 0) goto SPEICHER | ||
+ | ZEROCHECK: | ||
+ | if(eingabe-1 < 0) goto ENDE | ||
+ | SPEICHER: | ||
+ | speicher = eingabe | ||
+ | |||
+ | </ | ||
MicroCode: | MicroCode: | ||
+ | < | ||
+ | START: | ||
+ | eingabe -> D | ||
+ | D-> B | D -> E | ||
+ | B->C | ||
+ | if(C>=0) goto ZEROCHECK | ||
+ | |||
+ | SPEICHER: | ||
+ | E-> Speicher | ||
+ | goto START | ||
+ | |||
+ | ZEROCHECK: | ||
+ | B-1 -> C | ||
+ | if(C>=0) goto SPEICHER | ||
+ | |||
+ | ENDE: | ||
+ | |||
+ | </ | ||
2) | 2) | ||
Zeile 33: | Zeile 61: | ||
1) | 1) | ||
- | Page tabels Malen | + | **--TODO--** |
2) | 2) | ||
Zeile 54: | Zeile 82: | ||
2^N * 1 Byte | 2^N * 1 Byte | ||
+ | |||
+ | 6) | ||
+ | |||
+ | {{: | ||
====== Aufgabe 4: Cache ====== | ====== Aufgabe 4: Cache ====== | ||
Zeile 93: | Zeile 125: | ||
Code umformen auf ALU operation achten | Code umformen auf ALU operation achten | ||
+ | |||
+ | < | ||
+ | int test (int x , int n){ | ||
+ | int akku = 0; | ||
+ | int ret = 0; | ||
+ | int i = 0; | ||
+ | akku = i; | ||
+ | goto LCOND | ||
+ | | ||
+ | LOOP: | ||
+ | int diff2 = 0; | ||
+ | akku = wert[i]; | ||
+ | akku = akku - x; | ||
+ | akku = akku * akku; | ||
+ | diff2 = akku; | ||
+ | if(akku > 100){ | ||
+ | ret = 1; | ||
+ | goto END | ||
+ | } | ||
+ | akku = i; | ||
+ | akku = akku + 1; | ||
+ | i = akku; | ||
+ | |||
+ | LCOND: | ||
+ | if(akku < n) goto LOOP | ||
+ | |||
+ | END: | ||
+ | |||
+ | |||
+ | </ | ||
====== Aufgabe 6: Assembler ====== | ====== Aufgabe 6: Assembler ====== | ||
Zeile 143: | Zeile 205: | ||
1) | 1) | ||
- | Speed Up formel einfügen | + | Speedup = T1/ Tk = (n*s*t) / (s+(n-1))*t = n*s / s+(n-1) = lim n->inf n*s/s+(n-1) = s |
+ | |||
+ | Speedup | ||
2) | 2) | ||
Zeile 164: | Zeile 228: | ||
5) | 5) | ||
- | Pipeline zeichnen und Speedup Berrechnen | + | ^ index ^ BHBD ^ OH ^ AS ^ RS ^ |
+ | | 0 | movl(1) | ||
+ | | 1 | movl(2) | ||
+ | | 2 | movl(3) | ||
+ | | 3 | addl(4) | ||
+ | | 4 | addl(4) | ||
+ | | 5 | addl(4) | ||
+ | | 6 | addl(5) | ||
+ | | 7 | addl(5) | ||
+ | | 8 | addl(5) | ||
+ | | 9 | - | add(5) | ||
+ | | 10 | - | - | add(5) | ||
+ | | 11 | - | - | - | add(5) | ||
+ | | 12 | - | - | - | - | | ||
+ | |||
+ | |||
+ | Speed up daher | ||
+ | |||
+ | 4(Stufen) * 5(befehle) / 12 (ausführungschritte) | ||
6) | 6) |