Ludwig-Maximilians-Universität München Institut für Informatik Lehrstuhl für Mobile und Verteilte Systeme Prof. Dr. Claudia Linnhoff-Popien Rechnerarchitektur im Sommersemester 2016 Übungsblatt 11 Abgabetermin: 04.07.2016, 12:00 Uhr Besprechung: Besprechung der T-Aufgaben in den Tutorien vom 27. Juni – 01. Juli 2016 Besprechung der H-Aufgaben in den Tutorien vom 04. – 08. Juli 2016 Ankündigungen: Bitte beachten Sie die Anmeldung zur Klausur! Die An- bzw. Abmeldung ist bis 12. Juli 2016 um 12:00 Uhr über Uniworx möglich (harte Deadline!). Spätere An- und Abmeldungen werden nicht mehr berücksichtigt! Aufgabe 53: (T) Parameterübergabe bei Unterprogrammaufrufen (– Pkt.) Für die Parameterübergabe bei Prozeduraufrufen existieren verschiedene Möglichkeiten. a. Erläutern Sie zunächst die Begriffe call by value und call by reference. Geben Sie zu beiden Konzepten je ein Beispiel in einer Hochsprache an. b. Schreiben Sie nun ein SPIM-Programm, das den Durchschnitt der Werte eines Feldes berechnet. Die Berechnung selbst soll dabei ein Unterprogramm erledigen. Die Übergabe des Feldes soll nach dem Konzept call by value erfolgen. Achtung: Das Hauptprogramm soll dem Unterprogramm alle zur Berechnung notwendigen Werte über den Stack zur Verfügung stellen! Sie dürfen bei Ihrer Implementierung davon ausgehen, dass sich das Feld bereits im Speicher befindet. c. Schreiben Sie Ihr Programm aus Aufgabe b) so um, dass die Übergabe des Feldes nach dem Konzept call by reference funktioniert. Achtung: Das Hauptprogramm soll dem Unterprogramm ausschließlich Speicheradressen zur Berechnung zur Verfügung stellen! Sie dürfen wieder davon ausgehen, dass sich das Feld bereits im Speicher befindet. Sie dürfen zur Übergabe der Adressen an das Unterprogramm die laut Konvention dafür vorgesehenen Register $a0 - $a3 verwenden. Das Ergebnis des Unterprogrammaufrufes dürfen Sie dem Hauptprogramm über das Register $v0 zur Verfügung stellen. Aufgabe 54: (T) Don’t Care-Argumente 1 falls x ∈ {0, 1, 3, 4, 5, 8, 9} Betrachten Sie folgende Funktion y3 (x) = 0 falls x ∈ {2, 6, 7} (– Pkt.) Zur Binärcodierung der Ergebniswerte verwenden wir (wie in der Vorlesung) vierstellige Dualzahlen. Damit könnten also 16 Argumente kodiert werden. Stellen Sie eine Funktionstabelle auf und minimieren Sie anschließend die Funktion mit Hilfe eines Karnaugh-Diagramms. Rechnerarchitektur – SoSe 16, Übungsblatt 11 2 Aufgabe 55: (T) Anwendungen der Digitalisierung (– Pkt.) In der Vorlesung „Rechnerarchitektur“ werden Grundlagen der Digitalisierung behandelt. Während diese in Zeiten der Entstehung erster Rechnerarchitekturen zunächst die Hardware betrafen, vollzog sich sukzessive eine Erweiterung hin zur Software und dann zur Digitalisierung von Prozessen und ganzen Branchen. Die Auswirkungen sind heute in unserem Leben und Arbeiten, in den Medien und unserer Gesellschaft sichtbar. Diesen Aspekt wollen wir mit Hilfe des Buchs „Marktplätze im Umbruch“ betrachten. Lesen Sie den nachstehenden Artikel und gehen Sie kurz auf folgende Fragen ein: Welche Herausforderungen ergeben aus Sicht des Software Engineerings auf dem Weg zu Smart Cities? – Timo Greifenberg, Markus Look, Claas Pinkernell und Bernhard Rumpe: Energieeffiziente Städte - Herausforderungen und Lösungen aus Sicht des Software Engineerings? Hinweis: Als Student können Sie sich ein freies Exemplar des Buches „Marktplätze im Umbruch“ aus dem Internet herunterladen. Dabei haben Sie die folgenden 2 Möglichkeiten: a. Rufen Sie aus dem LRZ-Netz den folgenden Link zum Buch auf: http://link.springer. com/book/10.1007/978-3-662-43782-7. Verwenden Sie dabei den PAC-Proxy (https://www.lrz.de/services/netzdienste/proxy/zeitschriftenzugang/) b. Rufen Sie den folgenden Link zum Buch auf: http://link.springer.com/book/10. 1007/978-3-662-43782-7. Gehen Sie auf „Sign up/ Login“ und dort auf „Log in via Shibboleth or Athens“. Unter „find your institution“ geben Sie „LMU“ ein und klicken Sie auf „Log in via Shibboleth“. Es folgt die Weiterleitung zur LMU und der Login mit Ihrer CampusAdresse. Nach Bestätigung können Sie auf der Springer-Seite das Buch herunterladen. Aufgabe 56: (H) Multiplikation mit Schaltnetzen (12 Pkt.) In dieser Aufgabe sollen Sie ein Schaltnetz entwerfen, das dazu verwendet werden kann, das Ergebnis der Multiplikation einer dreistelligen Dualzahl x2 x1 x0 mit 3 zu erzeugen. a. Wie viele Bit werden mindestens benötigt, um alle Zahlen darstellen zu können, die bei der Multiplikation als Ergebnis auftreten können? b. Stellen Sie die Funktionstabelle der oben beschriebenen Schaltung auf. c. Stellen Sie anhand ihrer Funktionstabelle nun jeweils die Boolesche Funktion für die einzelnen Ergebnisbits auf und vereinfachen Sie diese Funktionen soweit wie möglich. Der Rechenweg muss klar ersichtlich sein! d. Durch welche einfache Operation lässt sich eine beliebige Dualzahl verdoppeln? Rechnerarchitektur – SoSe 16, Übungsblatt 11 3 Aufgabe 57: (H) Einfachauswahlaufgabe: Wiederholung (5 Pkt.) Für jede der folgenden Fragen ist eine korrekte Antwort auszuwählen („1 aus n“). Eine korrekte Antwort ergibt jeweils einen Punkt. Mehrfache Antworten oder eine falsche Antwort werden mit 0 Punkten bewertet. a) Welche Dualzahl entspricht dem hexadezimalen Wert C9? (i) 10000001 (ii) 11001001 (iii) 10111111 b) Wie lautet eine der De Morganschen Regeln? (iv) 10101010 (iv) a · (b + c) = (a · b) + (a · c) c) Wie lautet die Belegung von $t2 nach Ausführung des folgenden SPIM-Codes? .data var: .word 8, 32, 17, 4, 9 (i) (a + b) = a · b (ii) a · 0 = 0 (iii) a + a = 1 .text main: lw $t1, var lw $t2, var+4($t1) (i) 8 (ii) 32 (iii) 12 (iv) 4 d) Sei folgende Wahrheitstafel einer Booleschen Funktion f : B2 → B gegeben. Welcher Ausdruck entspricht nicht dieser Funktion? i 0 1 2 3 x1 0 0 1 1 x2 0 1 0 1 (i) f(x1 , x2 ) = (ii) f(x1 , x2 ) = x1 + x2 (x1 · x1 ) · x2 e) Ein Carry-Save-Addiernetz... (i) ...berechnet (ii) ...dient der Teilergebnisse schnellen Addition doppelt und von mehr als zwei selektiert eines Summanden. davon. f(x1 , x2 ) 1 0 1 1 (iii) f(x1 , x2 ) = (x1 · x2 ) (iv) f(x1 , x2 ) = (x1 + x2 ) · (x1 + x2 ) (iii) ...lässt den endgültigen Übertrag (von rechts nach links) durch das Schaltnetz rieseln. (iv) ...führt die Additionsoperation auf die Subtraktion zurück.
© Copyright 2025 ExpyDoc