Lösung zur Klausur über den Stoff der Vorlesung Grundlagen der Informatik II (90 Minuten)

Ähnliche Dokumente
Musterlösung zur Hauptklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14

Potenzen mit gleichen Grundzahlen werden multipliziert, indem man die Hochzahlen addiert und die Grundzahlen beibehält. a n a m = a m+n. a...

17. KONTEXTSENSITIVE SPRACHEN

Musterlösung der Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2012/13

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III

2. Schriftliche Leistungskontrolle (EK)

Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben

Universität Karlsruhe (TH)

TheGI 1: Grundlagen und algebraische Strukturen Prof. Dr.-Ing. Uwe Nestmann Februar Schriftliche Leistungskontrolle (EK)

Klausuraufgaben, Prüfungsleistung 06/08, Wirtschaftsmathematik, Betriebswirtschaft

Grundlagen der Kryptographie

Achtung: Im Nenner eines Bruches darf nie die Null stehen!!

Kontextfreie Grammatiken

2. Teilklausur zur Vorlesung Grundlagen der Theoretischen Informatik

SSYLB2 SS06 Daniel Schrenk, Andreas Unterweger Übung 5. Laborprotokoll SSY. Reglerentwurf nach dem Frequenz- Kennlinien-Verfahren

Beschreibungskomplexität von Grammatiken Definitionen

Berechenbarkeit und Komplexität

Klausuraufgaben. 1. Wir betrachten die folgende Sprache über dem Alphabet {a, b}

(Prüfungs-)Aufgaben zu formale Sprachen

Algorithmische Bioinformatik I

Physik. Lichtgeschwindigkeit

Grundbegriffe der Informatik

Theoretische Grundlagen der Informatik

Hans U. Simon Bochum, den Annette Ilgen. Beispiele zur Vorlesung. Theoretische Informatik. WS 08/09

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13)

Übungsaufgaben zu Formalen Sprachen und Automaten

Gymnasium Landau Q11 Mai Extremwertprobleme. L Lx2 4x 3 2

Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14

Einführung in die Theoretische Informatik

Grundlagen der Theoretischen Informatik

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III

7 Endliche Automaten. Reimund Albers Papierfalten Kapitel 7 Endliche Automaten 103

Grundlagen der Theoretischen Informatik

VORKURS: MATHEMATIK RECHENFERTIGKEITEN, ÜBUNGEN. Dienstag

Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (ii) ε ist ein regulärer Ausdruck über Σ.

Umformung NTM DTM. Charakterisierung rek. aufz. Spr. Chomsky-3-Grammatiken (T5.3) Chomsky-0-Grammatik Rek. Aufz.

Sprachen/Grammatiken eine Wiederholung

Typ-3-Sprachen. Das Pumping-Lemma

Lösungsvorschläge Blatt 4

Klausur zur Vorlesung Mathematische Logik

Ersetzbarkeitstheorem

Einführung in die Theoretische Informatik

Grammatiken. Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V. Startsymbol S V. Kurzschreibweise G = (V, Σ, P, S)

I.5. Kontextfreie Sprachen

Formale Methoden 1. Gerhard Jäger 23. Januar Uni Bielefeld, WS 2007/2008 1/18

Ein Satz der deutschen Sprache besitzt ein Subjekt, ein Prädikat und ein Objekt (SPO).

Produktbeschreibung. EM converterled

TU5 Aussagenlogik II

Grundbegriffe der Informatik

Resolutionsalgorithmus

Theoretische Informatik. Grammatiken. Grammatiken. Grammatiken. Rainer Schrader. 9. Juli 2009

LEITFÄHIGKEIT SCHWACHER ELEKTROLYTE

Universität des Saarlandes Theoretische Informatik (WS 2015) Lösungsvorschlag 4

Tutoraufgabe 1 (ɛ-produktionen):

Kapitel 3: Reguläre Grammatiken und Endliche. Automaten

Diskrete Strukturen Kapitel 2: Grundlagen (Beweise)

Pumping-Lemma. Beispiel. Betrachte die kontextsensitive Grammatik G mit den Produktionen. S asbc abc CB HB HB HC HC BC ab ab bb bb bc bc cc cc.

Seminar Kryptographie

Studienbegleitende Prüfung Modul 12 Anorganisch-Chemisches Grundpraktikum SS Niederschlag von CuS Niederschlag von PbS

Komplexitätstheorie Einführung und Überblick (Wiederholung)

Tconverter Produkthandbuch. LCAI 2x038/0500 K013 one4all LCAI 2x050/0500 K013 one4all

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Kapitel 1.3. Normalformen aussagenlogischer Formeln und die Darstellbarkeit Boolescher Funktionen durch aussagenlogische Formeln

Banner T 1 T 2. Bild T 7 T 8. Fließtext T 9

5 Relativistische Mechanik

Endliche Automaten. Endliche Automaten J. Blömer 1/23

10. Grassmannsche Vektoren und die Drehungen im Raum.

Theoretische Grundlagen der Informatik

Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten

Probeklausur zur Linearen Algebra II (B2)

Die nächste Übung ist vom auf den verlegt worden.

Vorlesung. Funktionen/Abbildungen

Formale Systeme. Binary Decision Diagrams. Prof. Dr. Bernhard Beckert WS 2010/2011 KIT INSTITUT FÜR THEORETISCHE INFORMATIK

Frequenzanalyse. Der Abstand der diskreten Frequenzlinien ist der Kehrwert der Periodendauer:

Allgemeine Hinweise: TECHNISCHE UNIVERSITÄT MÜNCHEN. Name Vorname Studiengang Matrikelnummer. Hörsaal Reihe Sitzplatz Unterschrift

8. Turingmaschinen und kontextsensitive Sprachen

Die Klassen P und NP. Dr. Eva Richter. 29. Juni 2012

Einführung in Algorithmen und Komplexität

Klausur Grundlagen der Informatik Hochschule Ravensburg-Weingarten

Klausur "Informationstechnische Grundlagen" WS 2012/2013

Grammatik Prüfung möglich, ob eine Zeichenfolge zur Sprache gehört oder nicht

Automaten, Spiele und Logik

Motivation natürliche Sprachen

2.11 Kontextfreie Grammatiken und Parsebäume

Versuch LF: Leitfähigkeit

Formale Sprachen. Formale Grundlagen (WIN) 2008S, F. Binder. Vorlesung im 2008S

Rekursiv aufzählbare Sprachen

Prof. Dr. Heinrich Müller; Dr. Frank Weichert 7. September 2015

Einführung in LTL unter MAUDE. Maschine!es Beweisen Einführung in LTL Seit# 1

Verkürzungsfaktor bei Antennen und Koax-Leitungen

Mathematik - Oberstufe

Grundlagen der Informatik II. Teil I: Formale Modelle der Informatik

Weiterführende Aufgaben zu chemischen Gleichgewichten

(Prüfungs-)Aufgaben zur Berechenbarkeits- und Komplexitätstheorie

Theoretische Informatik SS 03 Übung 11

Reguläre Sprachen und endliche Automaten

Theoretische Informatik 1

Einführung in die Informatik

Logik für Informatiker

Transkript:

Institut für Angewandte Informatik und Formale Beshreibungsverfahren 7.2.24 Lösung zur Klausur über den Stoff der Vorlesung Grundlagen der Informatik II (9 Minuten) Name: Vorname: Matr.-Nr.: Semester: (WS 23/4) Ih bestätige, dass ih die folgenden Angaben gelesen und mih von der Vollständigkeit dieses Klausurexemplars überzeugt habe (Seiten -25). Anmerkungen:. Legen Sie bitte Ihren Studierendenausweis bereit. Untershrift des o. g. Klausurteilnehmers bzw. der o. g. Klausurteilnehmerin 2. Bitte tragen Sie Name, Vorname und Matr.-Nr. deutlih lesbar ein. 3. Die folgenden Aufgaben sind vollständig zu bearbeiten. 4. Folgende Hilfsmittel sind zugelassen: keine. 5. Täushungsversuhe führen zum Ausshluss von der Klausur. 6. Unleserlihe oder mit Bleistift geshriebene Lösungen können von der Klausur bzw. Wertung ausgeshlossen werden. 7. Die Bearbeitungszeit beträgt 9 Minuten. Nur für den Prüfer : 2 3 4 5 6 7 8 9 - - - - - gesamt (9) (7) (8) () () () (8) (9) (7) (5) (6) (9)

Aufgabenübersiht ) Endlihe Automaten (9 Punkte).................. 2 2) Pumping-Lemma (7 Punkte)................... 5 3) Grammatiken (8 Punkte)..................... 8 4) Kellerautomaten ( Punkte)................... 5) Komplexitätstheorie ( Punkte)................. 4 6) Shaltwerke / CMOS ( Punkte)................. 6 7) Huffman-Kodierung (8 Punkte).................. 8 8) Binary Deision Diagram (9 Punkte)............... 9 9) Zahlendarstellung (7 Punkte)................... 22 ) Assembler (5 Punkte)....................... 24 ) Betriebssysteme (6 Punkte).................... 25

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten2 Aufgabe 24-H- 9 Punkte Endlihe Automaten / 9 Mit Hilfe endliher Automaten sollen Bitstrings B {, } darauf geprüft werden, ob es sih um Zahlen im BCD-Format handelt. Die Bitstrings werden beginnend mit der höhstwertigen Stelle seriell abgearbeitet. Geben Sie die Automaten in den folgenden Teilaufgaben jeweils vollständig an. Hinweis: Für jeden 4-Bit-Blok B = b 3 b 2 b b, der eine einzelne Ziffer Z kodiert, gilt: Beginnt B mit einer, handelt es sih auf jeden Fall um gültigen BCD-Code. Falls b 3 eine ist, müssen b 2 und b gleih sein. (a) Geben Sie zunähst einen Mealy-Automaten EA = ({, }, S, {, T, F}, δ, γ, s ) an, der ausgibt, ob es sih bei einer vierstelligen Bitfolge B {, } 4 um eine einzelne BCDkodierte Ziffer Z handelt oder niht. Verwenden Sie dabei das Ausgabealphabet wie folgt: : noh keine Aussage möglih, T : true, korrekte BCD-Ziffer (sobald erkannt), F : f alse, keine BCD-Ziffer (sobald erkannt). Hinweis: Beahten Sie, dass für jedes der vier gelesenen Bits die Ausgabe dem jeweils aktuellen Stand der Überprüfung entsprehen soll. Eingaben mit mehr als vier Zeihen müssen hier noh niht betrahtet werden. Lösung: EA = ({, }, {s, s, s 2, s 3, s 4 }, {T, F, }, δ, γ, s ),T/,T S,T S,n,T S,n 2 S 3,F,F/,F,F S 4 / 4

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten3 (b) Geben Sie nun einen Akzeptor EA 2 = ({, }, S, δ, s, F) an, der niht nur einzelne Ziffern, sondern beliebig lange Bitfolgen B {, } einliest und immer dann einen Endzustand erreiht, wenn die bisher eingelesene Bitfolge einer (mögliherweise mehrstelligen) Zahl in gültiger BCD-Kodierung entspriht. Lösung: EA 2 = ({, }, {s, s, s 2, s 3, s 4, s 5, s 6, s 7, s 8 }, δ, s, {s, s 4 }) S 5 S 6 S 7 / S 8 / S 4 / / S 3 S / S 2 S S S 5 S 6 S 7 / S 4 / / S 3 S / S 2 S / S 2 / S S 4 / S 5 S 3 / S 6 S 4 S 5 S S / S 2 / S 3 /

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten4 / 5

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten5 Aufgabe 2 24-H-2 7 Punkte Pumping-Lemma / 7 (a) Welhe Idee liegt den Pumping-Lemmata zugrunde und wie untersheidet sih hierbei das Pumping-Lemma für EA-Sprahen von dem für kontextfreie Sprahen? Erklären Sie in eigenen Worten und zeihnen Sie insbesondere zu beiden jeweils eine typishe Skizze, um die Grundidee zu verdeutlihen. Lösung: Die grundlegende Idee des Pumping-Lemmas ist, dass bei k untersheidbaren Ereignissen (bspw. Zuständen eines Automaten) in jeder Folge von n > k Ereignissen mindestens ein Ereignis doppelt vorkommen muss. Wenn der Übergang von einem Ereignis zum nähsten jeweils nur von dem aktuellen Ereignis abhängt (was wegen des Fehlens zusätzliher Speiher bei endlihen Automaten der Fall ist, im erweiterten Sinn aber auh bei kontextfreien Grammatiken, s.u.), ergibt sih daraus die Möglihkeit, die Ereignisfolge zwishen dem doppelten Auftreten eines Ereignisses beliebig oft zu wiederholen. Bei dem Pumping-Lemma für EA-Sprahen gilt: Um Wörter w zu akzeptieren, die aus mindestens so vielen Zeihen bestehen wie es Zustände gibt, benötigt der Automat mindestens eine Shleife. Bei dem für kontextfreie Sprahen bezieht sih die Ereignisfolge auf die Nihtterminalzeihen auf einem Pfad des Ableitungsbaums für ein ausreihend langes Wort der Sprahe. Das heißt, für ein ausreihend langes Wort der Sprahe enthält der Ableitungsbaum mindestens einen Pfad, der länger ist als die Anzahl der Nihtterminalzeihen der Grammatik. Es gibt mindestens einen Weg von der Wurzel zu einem Blatt, auf dem eine Variable mehrfah auftritt. Der Teil zwishen dem ersten und zweiten Auftreten von A kann beliebig oft wiederholt werden. / 4

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten6 Bei n Zuständen eines EAs muss sih beim Durhlaufen der Zustände nah spätestens n Shritten ein Zustand wiederholen: e e 2 2 3 e n n Allgemein gilt: e n j k n Bei Typ-2-Sprahen gilt dieselbe Argumentation auf Ebene der Nonterminalsymbole einer kontextfreien Grammatik. u v A x y... S A A... A... x Shleife/Pumpstelle y z v w x Zwei Pumpstellen (b) Entsheiden Sie, welhe der folgenden Aussagen rihtig sind und welhe falsh. Für jede rihtige Antwort erhalten Sie,5 Punkte, für jede falshe,5 Punkte Abzug. In Summe erhalten Sie keine negative Punktzahl für diese Teilaufgabe. Lösung: / 3 Die Aussage des Pumping Lemmas für EA-Sprahen (bezüglih der Existenz einer Pumpstelle in ausreihend langen Wörtern einer Sprahe) ist nur für EA-Sprahen erfüllt. Für eine Sprahe gilt entweder nur das Pumping-Lemma für EA- Sprahen oder nur das für kontextfreie. Die Existenz von zwei Pumpstellen gemäß Pumping-Lemma für kontextfreie Sprahen ist sowohl notwendig als auh hinreihend, um eine Sprahe als kontextfrei zu harakterisieren. Wenn für eine Sprahe die Aussage des Pumping-Lemmas für kontextfreie Sprahen erfüllt ist, dann gilt für diese Sprahe auh die Aussage des Pumping-Lemmas für EA-Sprahen. Die Aussage des Pumping-Lemmas für kontextfreie Sprahen gilt auh für jede reguläre Sprahe. Wahr Falsh

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten7 Die Aussage beider Pumping-Lemmata ist, dass es eine Zahl n N gibt, sodass für jedes Wort w mit w n eine Zerlegung z = uvw existiert, mit uv n, v und uv i w L für alle i N.

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten8 Aufgabe 3 24-H-3 8 Punkte Grammatiken / 8 Gegeben sei die Grammatik G = ({S, S, A, B, X, Y, Z}, {a}, P, S ), wobei P durh die erste Spalte folgender Tabelle gegeben sei: Produktion rehtslinear kontextfrei kontextsensitiv monoton S λ S a S S AAX S S A S ZB BA YAB YA AY BX λ BX BAX A a Y a Z λ (a) Kreuzen Sie für jede Regel in der Tabelle an, ob sie rehtslinear, kontextfrei, kontextsensitiv und/oder monoton ist. / 4

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten9 G = ({S, S, A, B, X, Y, Z}, {a}, P, S ) P = {S λ a S AAX, S S A ZB, BA YAB, YA AY, BX BAX λ, A a, Y a, Z λ} (b) Leiten Sie vier Wörter w,..., w 4 L(G) mit der Grammatik G ab. / 4

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten -S- -- -a- -S' A A X- -Z B A A X- -B A A X- -Y A B A X- -a A B A X- -a a B A X- -a a Y A B X- -a a a A B X- -a a a a B X- -a a a a- -a a a a B A X- -a a a a Y A B X- -a a a a A Y B X- -a a a a a Y B X- -a a a a a a B X- -a a a a a a-

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten Aufgabe 4 24-H-4 Punkte Kellerautomaten / Gegeben sei für E = {, } folgende Sprahe L mit L = { w E w = n u mit n N und u {, } n {, } 2n} Wörter aus L können also unterteilt werden in einen Anfangsteil aus n Nullen, auf den ein Endteil u aus Nullen und Einsen folgt, der entweder u = n oder u = 2n lang ist. Es gilt beispielsweise (Leerstellen kennzeihnen bei Wörtern aus L beispielhaft eine möglihe Unterteilung in Anfangs-Nullen und u und gehören niht zur Sprahe): λ,,,,, L;,,, L (a) Geben Sie einen nihtdeterministishen Kellerautomaten A = (E, S, K, δ, s, k, F) an, mit L(A) = L. Geben Sie A vollständig an. Lösung: A = {{, }, {s.s, s 2, s 3, s 4, s e }, {k, }, δ, s, k, {s, s e }} / 9 δ(s,, k ) = {(s, k )} δ(s,, ) = {(s, ), (s 2, λ), (s 4, )} δ(s,, ) = {(s 2, λ), (s 4, )} δ(s 2,, ) = {(s 2, λ)} δ(s 2,, ) = {(s 2, λ)} δ(s 2, λ, k ) = {(s e, k )} δ(s 4,, ) = {(s 3, λ)} δ(s 4,, ) = {(s 3, λ)} δ(s 3,, ) = {(s 4, )} δ(s 3,, ) = {(s 4, )} δ(s 3, λ, k ) = {(s e, k )}

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten 2 [k ] (s ) '' [k ] (s ) '' '' '' [k ] (s ) [k ] (s 2 ) [k ] (s 4 ) '' '' 'λ' '' [k ] (s 2 ) [k ] (s 4 ) [k ] (s e ) [k ] (s 3 ) '' '' 'λ' [k ] (s 2 ) [k ] (s 3 ) [k ] (s e ) 'λ' '' [k ] (s e ) [k ] (s 4 ) '' [k ] (s 3 ) 'λ' [k ] (s e ) (b) Wäre es auh möglih, für die Sprahe L einen deterministishen Kellerautomaten anzugeben? Begründen Sie in kurzen Worten. Lösung: / 2

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten 3 Nein, hier wird ein nihtdeterministisher Kellerautomat gebrauht. Da der Kellerautomat zuerst gewährleisten muss, dass nur Nullen gelesen werden, und aber mit jeder Null auh die Umkehrstelle erreiht sein kann, muss der Automat nihtdeterministish sein. Zudem muss der Automat im zweiten Wortteil auh noh überprüfen, ob es sih um n oder 2n Zeihen handelt.

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten 4 Aufgabe 5 24-H-5 Punkte Komplexitätstheorie / Gegeben seien die Probleme S AT (das Erfüllbarkeitsproblem aussagenlogisher Formeln) und CLIQUE (die Frage, ob ein Graph einen vollständig verbundenen Teilgraphen mit k Knoten enthält). Gegeben sei weiter die Funktion f : B 3 B mit f (a, b, ) = ab + a b + ab + a b (a) Erklären Sie am Beispiel der Funktion f, wie man die Erfüllbarkeit einer aussagenlogishen Formel prüfen kann. Ist f erfüllbar? Lösung: Beispielsweise eine Wertetabelle aufstellen und nah einer suhen oder naheinander alle möglihen Wertekombinationen für die Variablen a, b, eingeben und shauen, ob eine herauskommt usw. f ist erfüllbar, da f (,, ) =. (b) Warum ist für die angegebene Darstellung von f die Erfüllbarkeit verhältnismäßig leiht (in Linearzeit bzgl. Variablenanzahl) zu überprüfen? Lösung: Weil die Formel in DNF angegeben ist, was bedeutet, dass man die Klauseln einzeln prüfen kann und nur Linearzeit benötigt wird. () Angenommen, Sie wissen, dass S AT NP-vollständig ist. Wie können Sie argumentieren, dass CLIQUE ein shwieriges Problem ist? Wie kann man unter Nutzung des Wissens, dass S AT NP-vollständig ist, zeigen, dass CLIQUE NP-shwer ist? Konkretisieren Sie die allgemeine Definition der Polynomialzeitreduktion auf die Ebene aussagenlogisher Formeln und Graphen. Lösung: Man muss S AT auf CLIQUE reduzieren, also eine polynomialzeitberehenbare Funktion finden, die aus einer aussagenlogishen Formel einen Graphen und eine zugehörige Zahl k berehnet, sodass genau dann eine Clique der Größe k im Graphen vorhanden ist, wenn die Formel erfüllbar ist (eine Rükführung der Lösung ist dann niht notwendig). Was folgt, wenn Sie den Beweis geführt haben? Welhe Beziehung besteht zwishen den Shwierigkeitsgraden von S AT und CLIQUE? Lösung: Aus dem Beweis folgt, dass CLIQUE mindestens so shwer ist wie S AT (bis auf polynomielle Faktoren). Wenn S AT also mindestens Exponentialzeit zur Lösung benötigt (wie heute angenommen wird), dann gilt das auh für CLIQUE. Falls P = NP, wären beide Probleme aber deutlih leihter als angenommen. / 2 / / 5

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten 5 (d) Angenommen, Sie kennen keine NP-shweren Probleme. Welhe Shritte müssten Sie ausführen, um zu zeigen, dass S AT NP-shwer ist? Lösung: In diesem Fall muss man für alle beliebigen Probleme X NP zeigen, dass eine Polynomialzeitreduktion auf S AT existiert, also X pol S AT. Cook hat das geshafft, indem er eine Funktion angegeben hat, die aus einer beliebigen nihtdeterministishen polynomialzeitbeshränkten Turingmashine in Polynomialzeit eine aussagenlogishe Formel generiert, sodass die Turingmashine genau dann akzeptierend hält, wenn die Formel erfüllbar ist. Da es für alle Probleme X NP so eine Turingmashine gibt und der Beweis für alle solhen Turingmashinen gilt, ist dadurh gezeigt, dass X NP : X pol S AT, was die Definition von NP-Shwere für das Problem S AT ist. / 2

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten 6 f Aufgabe 6 24-H-6 Punkte Shaltwerke / CMOS / Das folgende Shaltnetz soll auf physikalisher Ebene in CMOS realisiert werden. Ihnen als Ingenieur stehen dazu maximal 8 PMOS und 8 NMOS Transistoren zur Verfügung. Zeihnen Sie von dem Shaltnetz auf Transistorebene nur den PMOS-Bereih. Betrahten Sie das NMOS-Rehtek als Blakbox und stellen Sie durh geeignete Leitungen eine Verbindung zwishen NMOS- und PMOS-Bereih her. a & f(a,b,) = b & Hinweis: Lesen Sie zuerst die Booleshe Funktion aus dem Shaltnetz aus und vereinfahen Sie diese soweit wie möglih. Lösung : f (a, b, ) = ((a b) ( b )) = ( (a b) ( b )) = (( a b) ( b )) V DD a b NMOS f GND

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten 7 Lösung 2: f kann vereinfaht werden zu a b = b V DD a b NMOS f GND

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten 8 Aufgabe 7 24-H-7 8 Punkte Huffman-Kodierung Folgende Zeihenkette der Länge 23 sei repräsentativ für Daten, die noh kommen sollen (Leerzeihen werden ignoriert): ZEHN ZAPPELMÄNNER ZAPPELN Erzeugen Sie anhand der durh die Zeihenkette gegebenen Häufigkeitsverteilung eine Huffman- Kodierung. Tragen Sie dazu die Häufigkeiten der Zeihen in die erste Tabelle ein, erstellen Sie einen entsprehenden Baum mit Angabe der Häufigkeiten an den Knoten und tragen Sie die Kodierung der Zeihen in die zweite Tabelle ein. / 8 Lösung (Beispiel): Zeihen Z E H N A P L M Ä R Häufigkeit 3 4 4 2 4 2 23 8 5 n 4 p 4 7 8 z 3 4 e 4 4 a 2 2 l 2 2 h m r ä

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten 9 Aufgabe 8 24-H-8 9 Punkte Binary Deision Diagram / 9 Gegeben sei die Booleshe Funktion f : B 3 B mit f (a, b, ) = ab + a b + ab + a b = (a b ) (a) Tragen Sie in die folgende Tabelle die Funktionswerte der Funktion f ein. / 2 a b a b f (b) Berehnen Sie das zu f gehörende BDD mit der Variablenreihenfolge a b, indem Sie mit einer Baumdarstellung der Wertetabelle beginnen und den Algorithmus aus der Vorlesung anwenden. / 6 a b b

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten 2 a b b a b b a b b

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten 2 () Wie lässt sih aus einem gegebenen BDD für eine Funktion f das BDD für die negierte Funktion f = de f f generieren? Erklären Sie in kurzen Worten. Lösung: Blattknoten und vertaushen. / a b b

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten 22 Aufgabe 9 24-H-9 7 Punkte Zahlendarstellung / 7 Gegben sei folgende Gleitpunktzahl z in der IEEE-754-Darstellung. (a) Geben Sie z im Dezimalsystem an. Es ist ausreihend, die Mantisse als Summe von Brühen zu shreiben. Lösung: Bei 32-Bit Gleitpunktzahlen im IEEE-Standard 754 gilt: -Bit Vorzeihen, 8-Bit Charakteristik, 23-Bit Mantisse. q = 2 8 = 27 = 2 6 + 2 = 66 m = 2 + 2 2 + 2 4 + 2 9 v = z = ( + + + + ) 2 4 6 52 2 6 / 2 (b) Geben Sie z so genau wie möglih als 6-Bit Gleitpunktzahl z an, mit folgender Aufteilung der Bits: Vorzeihen: Bit, Charakteristik: 7 Bit, Mantisse: 8 Bit. Wie groß ist der Fehler und wodurh wird er verursaht? Lösung: v = q = 2 7 = 63 q = 6 = q 6 = 2 = () 2 Mantisse wird übernommen, 8 Bit sind aber niht ausreihend 2 9 kann niht dargestellt werden, was zu einem Fehler von 2 9 2 6 = 2 7 führt. m = () 2 / 3

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten 23 () Könnte z mit einer anderen Aufteilung der 6 Bit in Vorzeihen, Charakteristik und Mantisse genauer dargestellt werden? Begründen Sie Ihre Antwort. Lösung: Nein. Das Fehlende Bit der Mantisse müsste entweder von Vorzeihen oder Charakteristik genommen werden. Das Vorzeihen-Bit wird benötigt zur Darstellung der Negativität und eine 6-Bit Charakteristik kann nur Exponenten von 3 bis 3 darstellen, also niht 6. / 2

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten 24 Aufgabe 24-H- 5 Punkte Assembler / 5 Gegeben seien folgende beiden Auszüge aus Assembler-Programmen A und A2: A: STORE R R3 STORE R2 R STORE R3 R2 A2: ADD R R2 R SUBTRACT R R2 R2 SUBTRACT R R2 R (a) Geben Sie für die folgenden Anfangswerte von R und R2 an, welhe Werte dort nah der Programmausführung von A und A2 jeweils gespeihert sind. Werte vor Ausführung / 3 Werte nah A Werte nah A2 R 5 7 7 R2 7 5 5 R 2 2 R2 2 R 8 5 5 R2 5 8 8 (b) Welhe Funktion berehnen A und A2 jeweils? Sind die beiden Programme äquivalent? Lösung: Beide Programme vertaushen die Werte von R und R2, sind also äquivalent. / 2

Grundlagen der Informatik II Klausur 7.2.24 WS 23/4 Aufgaben / 25 Seiten 25 Aufgabe 24-H- 6 Punkte Betriebssysteme / 6 (a) Beshreiben Sie in kurzen Worten die vershiedenen Zustandsübergänge eines Prozesses, wie sie in der folgenden Abbildung verdeutliht sind. Verwenden Sie hierfür die Nummerierung aus der Abbildung. / 3 2 Initiiert Bereit Aktiv 3 6 5 Blokiert 4 Terminiert Lösung: () Es sind alle Betriebsmittel außer dem Prozessor vorhanden, der Prozess ist bereit zur Ausführung (2) Prozessor wird dem Prozess zugeteilt (3) aktiver Prozess wird unterbrohen (Prozessor wird entzogen), Prozess bleibt aber bereit zur Fortsetzung der Ausführung (4) Prozess ist abgeshlossen und gibt alle Betriebsmittel frei (5) aktiver Prozess wird unterbrohen uns muss auf ein Ereignis warten (6) Ereignis ist eingetreten, Prozess ist wieder bereit, wartet nur auf Prozessor (b) In welhem Zusammenhang in Bezug auf Prozesse wird das Semaphore-Konzept verwendet? Was wird dadurh verhindert? Beshreiben Sie kurz die Idee dieses Konzeptes. Lösung: Das Semaphore-Konzept wird bei der Synhronisation von Prozessen verwendet, um Prozesse zu koordinieren und zu verhindern, dass ein Prozess ein falshes Ergebnis liefert. Es ähnelt einer Verkehrsampel. Wenn ein Prozess einen kritishen Bereih betreten möhte, dann überprüft er zuerst, ob das Semaphore auf rot gesetzt ist (und wartet in diesem Fall, bis das Semaphore auf grün gesetzt wird). Betritt ein Prozess einen kritishen Bereih, dann shaltet das Semaphore auf rot. Verlässt er den Bereih wieder, dann shaltet es wieder auf grün. / 3