Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Hauptstudiumsprüfungen » Lehrstuhl 2 » ueb1-2015-03-31   (Übersicht)

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
pruefungen:hauptstudium:ls2:ueb1-2015-03-31 [31.03.2015 11:05] maxfraggpruefungen:hauptstudium:ls2:ueb1-2015-03-31 [31.03.2015 11:26] (aktuell) Hasenichts
Zeile 1: Zeile 1:
 31.03.2015 31.03.2015
  
-  *     Grundlagen des Übersetzerbaus+  *     Grundlagen des Übersetzerbaus (Doppelprotokoll, Prüfungen waren direkt nacheinander und sehr sehr ähnlich)
   *     30 Minuten   *     30 Minuten
   *     Prüfer: Dipl.-Math. Jakob Krainz   *     Prüfer: Dipl.-Math. Jakob Krainz
Zeile 39: Zeile 39:
 P: Woraus werden Lexer/Parser denn generiert? P: Woraus werden Lexer/Parser denn generiert?
  
-S: Syntax Beschreibung als Gramatiken+S: Syntax-Beschreibung als Grammatiken
  
 P: Woraus besteht ein Parser? P: Woraus besteht ein Parser?
  
-S: Generierte Tabelle + Stack+S: Generierte Tabelle + Stack, Operationen shift/reduce
  
 P: Was macht der Parser? P: Was macht der Parser?
Zeile 55: Zeile 55:
 P: okay, dann Zeile [1], was macht der Parser daraus? P: okay, dann Zeile [1], was macht der Parser daraus?
  
-S: AST auf Papier skizieren, wichtig, Parser kann Typ des DIV nicht erkennen+S: AST auf Papier skizzieren, wichtig, Parser kann Typ des DIV nicht erkennen
  
 P: Wie erkennt man, dass es eine Integer Division ist? P: Wie erkennt man, dass es eine Integer Division ist?
Zeile 71: Zeile 71:
 P: Was macht unser Compiler aus [2]? P: Was macht unser Compiler aus [2]?
  
-S: Parser akzeptiert, Typfehler in Java, Akzeptiert in C.+S: Parser akzeptiert, Typfehler in Java, Akzeptiert in C. E-Parser weist es zurück, kurz erklärt wieso.
  
 P: Philippsen schaut komisch P: Philippsen schaut komisch
Zeile 96: Zeile 96:
 </code> </code>
  
-Neue Variable einfuehren um doppelte auswertung von x2 zu verhindern+Neue Variable einfuehren um doppelte auswertung von x2 zu verhindern (da selbst drauf zu kommen war gefühlt ein Pluspunkt)
   
 Codebeispiel 2: Codebeispiel 2:
Zeile 114: Zeile 114:
 </code> </code>
   
-P: Was macht ein Compiler denn aus einem switch-case?+P: Was macht ein Compiler denn aus einem switch-case? (Übersprungen in Prüfung 2)
  
 S: Sprungtabelle, If, Binaere Suche aus If. S: Sprungtabelle, If, Binaere Suche aus If.
Zeile 157: Zeile 157:
  
 S: Um beim ASM schreiben nicht bekloppt zu werden S: Um beim ASM schreiben nicht bekloppt zu werden
 +
 +S: (Prüfung 2) Nach ganz viel draufstumpen: Für dynamische Arrays (C99 war der entscheidende Tipp...)
  
 S: Durch Stackframes hangeln um an umliegende Argumente zu kommen, Arrays auf Stack mit dynamischer Groesse S: Durch Stackframes hangeln um an umliegende Argumente zu kommen, Arrays auf Stack mit dynamischer Groesse
Zeile 172: Zeile 174:
 S: Pointer (keine details gewusst) S: Pointer (keine details gewusst)
  
-Faire Pruefung, etwas ungewohnt, dass sich Pruefer und Beisitzer abgewechselt haben mit dem Fragen stellen+Faire Pruefung, etwas ungewohnt, dass sich Pruefer und Beisitzer abgewechselt haben mit dem Fragen stellen. Gab zwischendurch mehrfach Missverständnisse, die dann aber irgendwie aufgelöst wurden. Wenn erkannt wird, dass man das Thema drauf hat, wird auch frühzeitig abgebrochen und das nächste Thema angesprochen.