1. ¨
G. d. Informatik 2 - Ubungsklausur - Tutorium Sebastian Mies 1
Grundlagen der Informatik 2
¨
”Ubungsklausur”
60 Minuten Bearbeitungszeit
60 Punkte
1 Punkt pro Minute
Tutorium
Sebastian Mies <sebastian.mies’at’gmx.net>
07.02.2006 (Wintersemester 05/06)
Alle Angaben ohne Gew¨hr.
a
Hinweise auf Fehler oder Erg¨nzungsvorschl¨ge sind immer willkommen!
a a
2. ¨
G. d. Informatik 2 - Ubungsklausur - Tutorium Sebastian Mies 2
Aufgabe 1. Grammatiken (9 Punkte)
(a) Entwerfen Sie eine kontextfreie Grammatik mit maximal 8 Produktionen f¨r die Sprache
u
(4 Punkte)
L = {w|w ∈ {0, 1}+ : #0(w) = #1(w)}.
L¨sung:
o
S → 0B | 1A
A → 0 | 0S | 1AA
B → 1 | 1S | 0BB
oder (nicht ganz korrekt, da leeres Wort enthalten):
S → S0S1S | S1S0S | λ
(b) Bringen Sie Ihre Grammatik in Chomsky-Normalform und l¨sen Sie das Wortproblem mit
o
Hilfe des CYK-Algorithmus f¨r das Wort 100101. (5 Punkte)
u
1 0 0 1 0 1
L¨sung:
o
3. ¨
G. d. Informatik 2 - Ubungsklausur - Tutorium Sebastian Mies 3
1. Variante:
S → CB | DA
A → 0 | CS | DE
E → AA
B → 1 | DS | CF
F → BB
C→0
D→1
2. Variante: (nur eine 0,1)
S → CB | DA | CD | DC
A → CS | DE
E → AA | CA | AC | CC
B → DS | CF
F → BB | DB | BD | DD
C→0
D→1
zu 1. Variante:
1 0 0 1 0 1
D,B C,A C,A D,B C,A D,B
S E S S S
A A A B
S E S
A A
S
zu 2. Variante:
1001 0 1
DCCD C D
SESS S
AAAB
SES
AA
S
4. ¨
G. d. Informatik 2 - Ubungsklausur - Tutorium Sebastian Mies 4
Aufgabe 2. Huffman-Codes/BDD (6 Punkte)
(a) Welche Bedingungen stellt man an einen Huffman-Code? (1 Punkte)
L¨sung:
o
Fano-Bedingung, Codel¨nge minimal.
a
(b) Zeichnen Sie einen Huffman-Baum f¨r die Wahrscheinlichkeitverteilung: (3 Punkte)
u
a bcdef g
10 53187 6
1
(jeweils mal 40 )
L¨sung:
o
40
1 0
17
1
9 23
0
1 1
0 0
4 13
0 0
1 1
g
c e a
f
d b
(c) Nun sei a-d = 0 und e-g = 1, d.h. die Bl¨tter des Baumes besitzen nur noch die Zeichen 0,
a
1. Sie erhalten damit einen bin¨ren Baum. Die Variablenreihenfolge sei gegeben durch x0
a
(Wurzel) bis x3 bzw. x2 (Bl¨tter). Minimieren Sie diesen Baum zu einem BDD (Binary
a
Decision Diagramm). (2 Punkte)
L¨sung:
o
x0
1 0
x1 x0
0
1 1
x2 x1 x1 x1
0 0 0
1 1 1 1
0 0
x3 x2 0 1 1 0
0 0
1 1
0 0 0 1 1 1 0
5. ¨
G. d. Informatik 2 - Ubungsklausur - Tutorium Sebastian Mies 5
Aufgabe 3. Automaten (12 Punkte)
Gegeben sei folgender Automat:
1
0
0 1
0 1
a c
b a b f
b g c
1 0
c a c
0 e h f
1 f c g
0
g g e
1 1 0
g
e f h h g c
1
0
b
c
e
f
g
h
abcefg
¨
(a) Minimieren Sie diesen Automaten, nennen Sie die Aquivalenzklassen und zeichnen Sie den
minimierten Automat. (8 Punkte)
(b) Geben Sie zu dem minimierten Automaten den regul¨ren Ausdruck an. (4 Punkte)
a
L¨sung:
o
6. ¨
G. d. Informatik 2 - Ubungsklausur - Tutorium Sebastian Mies 6
b 2
c 1 1
e 2 1
f 2 2 1 2
g 3 2 1 3 2
h 2 1 2 2 2
a b c e f g
a’ = {a,e}, b’ = {b,h}, c’ = {c}, f’ = {f}, g’ = {g}
0
0
a
0 1
1
g
b 1
1 1
0
f
c
0
α = (011∗ 0 + 000∗ 1 + 110∗ 1 + 101∗ 0)∗ (01 + 10)1∗
7. ¨
G. d. Informatik 2 - Ubungsklausur - Tutorium Sebastian Mies 7
Aufgabe 4. Schaltnetze (8 Punkte)
(a) Was unterscheidet ein gew¨hliches RS-Flipflop von einem Master-Slave RS Flipflop? (1 Punkte)
o
L¨sung:
o
Ein Master-Slave Flipflop ist getaktet und es schaltet bei steigender/fallender
Flanke.
(b) Zeichnen Sie das Schaltbild eines OR Gatters mit pMOS und nMOS Transistoren. (3 Punkte)
L¨sung:
o
Siehe Folien. (NOR + Inverter)
(c) Realisieren Sie einen 4-zu-2 Multiplexer mit NAND Gattern.
(eigentlich nicht klausurrelevant!)
(5 Punkte)
Hinweis: Sie k¨nnen unzul¨ssige Eingangssignale vernachl¨ssigen!
o a a
L¨sung:
o
x3 x2 x1 x0 y1 y0
0 0 0 1 0 0
0 0 1 0 0 1
0 1 0 0 1 0
1 0 0 0 1 1
y0 = x1 + x3 = (x1 + x3 ) = (x1 x3 ) = nand(nand(x3 , x3 ), nand(x1 , x1 ))
y1 = x2 + x3 = (x2 + x3 ) = (x2 x3 ) = nand(nand(x3 , x3 ), nand(x2 , x2 ))
8. ¨
G. d. Informatik 2 - Ubungsklausur - Tutorium Sebastian Mies 8
Aufgabe 5. Multiple Choice (10 Punkte)
Hinweis: Jede richtige Antwort gibt einen Punkt, jede falsche einen Punkt Abzug. Es k¨nnen
o
minimal 0 Punkte erreicht werden.
Frage Wahr Falsch
Das Halteproblem ist entscheidbar
NP ist die Klasse der Entscheidungsprobleme f¨r die es eine NTM gibt,
u
deren worst-case Rechenzeit polynomiell beschr¨nkt ist.
a
Mit NAND Gattern kann jede boolsche Funktion realisiert werden.
Die Sprache L = {an bn | n ∈ N} geh¨rt der Klasse Chomsky-1 an.
o
Sei G eine Chomsky-1 Grammatik f¨r eine Sprache L, dann gibt es eine
u
Greibach-Normalform G’ mit L(G’) = L.
Jede von einem deterministischen Kellerautomaten akzeptierte Sprache L
ist kontextfrei.
Bei der Harvard-Archtitektur teilen sich Programm und Daten den gleichen
Speicher.
Das Clique Problem ist NP-vollst¨ndig.
a
Die Menge der rationalen Zahlen ist abz¨hlbar.
a
Zu jedem DEA l¨sst sich ein minimaler DEA konstruieren.
a
L¨sung:
o
f, w, w, w, f, w, f, w, w, w
9. ¨
G. d. Informatik 2 - Ubungsklausur - Tutorium Sebastian Mies 9
Aufgabe 6. Codierungen (11 Punkte)
Gegeben sei der Bin¨rstring 1001 0110 und die Gleitpunktdarstellung: v c m’.
a
Dabei ist wie folgt definiert:
• Das Vorzeichen v hat 1 Bit, v = 1 steht f¨r negative Zahlen.
u
• Die Charakteristik c hat 3 Bit und ist in Excess-3 Darstellung.
• Die Mantisse m’ hat 4 Bit, die Eins wurde bereits abgezogen, also m = m + 1;
(a) Was bedeutet der String in BCD, Vorzeichenbetragsform, 1er-Komplement, 2er-Komplement
Darstellung? (2 Punkte)
L¨sung:
o
BCD: 96, VBF: −22, 1er: −105, 2er: −106
(b) Was ist die gr¨sste bzw. kleinste Zahl (> 0) die man mit dem oben definierten Gleitpunk-
o
tzahlenformat darstellen kann? (3 Punkte)
L¨sung:
o
Min: 2−3 , Max: 25 − 1
(c) Stellen Sie folgende Gleitpunktzahlen als Dezimalzahlen dar:
(6 Punkte)
FPZ
1 101 1000
0 001 0001
1 001 1001
L¨sung:
o
FPZ
1 101 1000 -6 | (−1) · 25−3 · (1 + 2−1)
0 001 0001 17 | 21−3 · (1 + 2−4)
64
1 001 1001 - 25 | (−1) · 21−3 · (1 + 2−1 + 2−4)
64
10. ¨
G. d. Informatik 2 - Ubungsklausur - Tutorium Sebastian Mies 10
¨
Aufgabe 7. Rechnerarchitektur/Ubersetzer (4 Punkte)
(a) Wann tritt ein Seitenfehler auf und wie reagiert das Betriebssystem auf diesen? (1 Punkte)
L¨sung:
o
Der Seitenfehler tritt auf, wenn eine virtuelle Seite keinen Verweis auf eine physikalis-
che Seite besitzt. Dies ist meist der Fall, wenn das Betriebssystem die Seite in den
Hintergrundspeicher ausgelagert hat.
Das Betriebssystem muss also die Seite aus dem Hintergrundspeicher in den phys.
Speicher holen und die Seite entprechend zuweisen.
(b) Welche Auswirkungen hat es, wenn beim Round-Robin scheduling Verfahren, die Zeitscheibengr¨sse
o
sehr klein bzw. sehr gross gew¨hlt wird? (1 Punkte)
a
L¨sung:
o
Grosse Zeitscheiben: Rechtzeitigkeit geht verloren.
Kleine Zeitscheiben: Threadswitchaufwand wird gr¨sser.
o
¨
(c) Nennen Sie die Phasen beim Ubersetzen eines Programms.
(2 Punkte)
L¨sung:
o
Syntaktische Analyse
(Semi-Semantische Analyse)
Zwischensprache (Metasprache/-modell)
Optimierung
Maschinensprache
(Optimierung)
siehe auch: Skript!