Grundlagen der Informatik II Übungsblatt: 5, WS 17/18 mit Lösungen

Ähnliche Dokumente
Grundlagen der Informatik II

Grundlagen der Informatik II Übungsblatt: 4, WS 17/18 mit Lösungen

Klausur über den Stoff der Vorlesung Grundlagen der Informatik II (90 Minuten)

Lösungsvorschlag 3. Übung Technische Grundlagen der Informatik II Sommersemester 2009

, 2015S Übungstermin: Mi.,

Informationsdarstellung 2.2

Übung Praktische Informatik II

Klausur über den Stoff der Vorlesung Grundlagen der Informatik II (90 Minuten)

Übungsblatt Nr. 7. Lösungsvorschlag

Technische Informatik - Eine Einführung

Klausur über den Stoff der Vorlesung Grundlagen der Informatik II (90 Minuten)

Zwischenklausur Informatik, WS 2016/17. Lösungen zu den Aufgaben

(Prüfungs-)Aufgaben zur Codierungstheorie

Grundlagen der Informatik II Teil 2: Architektur von Rechensystemen

Numerisches Programmieren, Übungen

Zahlen im Computer (Klasse 7 Aufbaukurs Informatik)

2 Darstellung von Zahlen und Zeichen

Grundlagen der Informatik II Prüfung WS 2011/12 11 Aufg./15 Seiten 3

Klausur über den Stoff der Vorlesung Grundlagen der Informatik II (90 Minuten)

Inhaltsangabe 3.1 Zahlensysteme und Darstellung natürlicher Zahlen Darstellung ganzer Zahlen

Lösungsvorschlag 4. Übung Technische Grundlagen der Informatik II Sommersemester 2009

2.7 Der Shannon-Fano-Elias Code

, 2016W Übungstermin: Fr.,

, 2015W Übungstermin: Do.,

Error detection and correction

Fehlererkennende und fehlerkorrigierende Codes

Zahlensysteme und Kodes. Prof. Metzler

Grundlagen der Technischen Informatik. 3. Übung. Christian Knell Keine Garantie für Korrekt-/Vollständigkeit

Informatik I: Abschnitt 7

Technische Informatik (RO)

Lösung 2. Übungsblatt

Praktikum zur Vorlesung Einführung in die Programmierung WS 14/15 Blatt 3

Codierungstheorie Teil 1: Fehlererkennung und -behebung

Zahlen in Binärdarstellung

Zwischenklausur Informatik, WS 2014/15

Grundlagen der Technischen Informatik. 2. Übung

Grundlagen der Technischen Informatik. 4. Übung

1. Tutorium Digitaltechnik und Entwurfsverfahren

Numerische Lineare Algebra

Grundlagen der Technischen Informatik. Hamming-Codes. Kapitel 4.3

II. Grundlagen der Programmierung

Codes (6) Fehlererkennende (EDC) bzw. fehlerkorrigierende Codes (ECC)

Numerisches Programmieren

RO-Tutorien 3 / 6 / 12

Grundlagen der Technischen Informatik. 3. Übung

Grundlagen der Technischen Informatik. 4. Übung

Optimalcodierung. Thema: Optimalcodierung. Ziele

Die Zahl ist: (z 2, z 1, z 0 ) (z ) : 7 = 0 Rest z 2


Kapitel 5: Darstellung von Daten im Rechner

Wandeln Sie die folgenden Zahlen in Binärzahlen und Hexadezimalzahlen. Teilen durch die Basis des Zahlensystems. Der jeweilige Rest ergibt die Ziffer.

Schriftliche Prüfung

Rückblick. Zahlendarstellung zu einer beliebigen Basis b. Umwandlung zwischen Zahlendarstellung (214) 5 = (278) 10 =(?) 8

Übungsklausur - Beispiellösung

DuE-Tutorien 16 und 17

(Prüfungs-)Aufgaben zu Schaltnetzen

Rückblick. Addition in der b-adischen Darstellung wie gewohnt. Informatik 1 / Kapitel 2: Grundlagen

Dipl.-Ing. Halit Ünver Datenbanken/Künstliche Intelligenz FAW/n. Zahlensysteme

Aufgabe 1. Aufgabe 2. Abbildung 1: Schaltung für die Multiplikation mit 4

0 Im folgenden sei die Wortlänge gleich 8 (d. h.: es wird mit Bytes gearbeitet).

Lösungsvorschläge zu Blatt Nr. 13

Binärzahlen. Vorkurs Informatik. Sommersemester Institut für Informatik Heinrich-Heine-Universität Düsseldorf

Rechnerstrukturen. Michael Engel und Peter Marwedel. Sommer TU Dortmund, Fakultät für Informatik

Inhalt. Zahlendarstellungen

Rückblick. Erweiterte b-adische Darstellung von Kommazahlen. 7,1875 dargestellt mit l = 4 und m = 4 Bits. Informatik 1 / Kapitel 2: Grundlagen

Informatik Übungsaufgaben

Zahlensysteme. Digitale Rechner speichern Daten im Dualsystem 435 dez = binär

Zahlensysteme. Wie Computer Zahlen darstellen und mit ihnen rechnen Peter Ziesche

7. Übung zur Vorlesung Grundlagen der Informatik

Technische Informatik - Eine Einführung

A2.3 Lineare Gleichungssysteme

Übungen zur Vorlesung Grundlagen der Rechnernetze. Zusätzliche Übungen

Lösungsvorschlag zu 1. Übung

2 Darstellung von Zahlen und Zeichen

1 Übungen zu Mengen. Aufgaben zum Vorkurs B S. 1. Aufgabe 1: Geben Sie folgende Mengen durch Aufzählen ihrer Elemente an:

Einführung in die Informatik I

Lösungen: zu 1. a.) b.) c.)

2 Rechnen auf einem Computer

Einführung in die Kodierungstheorie

GTI ÜBUNG 4 BINÄR-, HEX- UND GLEITKOMMAZAHLEN-ARITHMETIK

Abschnitt 4: Daten und Algorithmen

Klausur über den Stoff der Vorlesung Grundlagen der Informatik II (90 Minuten)

mit "Skalarprodukt" aus i-tem "Zeilenvektor" und j-tem "Spaltenvektor"

Datendarstellung Teil 2

Wertebereiche, Overflow und Underflow

1. Grundlagen der Informatik Zahlensysteme und interne Informationsdarstellung

Klausur über den Stoff der Vorlesung Grundlagen der Informatik II (90 Minuten)

1. Das dekadische Ziffernsystem (Dezimalsystem) Eine ganze Zahl z kann man als Summe von Potenzen zur Basis 10 darstellen:

Gierige Algorithmen Interval Scheduling

Strings. Stringsuche, Boyer-Moore, Textkompression, Huffman Codes.

31 Polynomringe Motivation Definition: Polynomringe

B: Basis des Zahlensystems 0 a i < B a i є N 0 B є (N > 1) Z = a 0 B 0 + a 1 B 1 + a 2 B a n-1 B n-1

5 Stellenwertsysteme. Berechne q :=, und setze r := a q b. = 2.25, also q = 2.25 = 2 und = 3. Im Beispiel ergibt sich a b

Einführung in die Informatik II Aus der Informationstheorie: Datenkompression

Abschnitt 2: Daten und Algorithmen

2 Repräsentation von elementaren Daten

Digitaltechnik FHDW 1.Q 2007

Grundlagen der Informatik II

Transkript:

PD. Dr. Pradyumn Shukla Marlon Braun Micaela Wünsche Dr. Friederike Pfeiffer-Bohnen Dr. Lukas König Institut für Angewandte Informatik und Formale Beschreibungsverfahren Grundlagen der Informatik II Übungsblatt: 5, WS 7/8 mit Lösungen Besprechung ab: 8. Januar 28 Forum: http://info2.aifb.kit.edu/qa Klicken Sie auf die ID AU-X-Y im Aufgaben-Header um zum richtigen Thread zu gelangen. Anmerkung zum XWizard (http://www.xwizard.de): Auf den Übungsblättern sind manchmal Links (QR-Codes) angegeben, die zu dem in der Aufgabe behandelten Konzept (etwa dem dort dargestellten endlichen Automaten) auf der XWizard-Website führen. Die mit Skript überschriebenen Links leiten einfach zu dem jeweiligen endlichen Automaten (oder sonstigen Konzept) weiter, wo Sie damit herumspielen können. Die mit MiniEx überschriebenen Links führen zu einer kleinen 2-Minuten-Aufgabe, die Sie zusätzlich mit dem XWizard lösen können. Tipp: Sie können auch die angegebene ID (in der Form ID-234) ins Skriptfeld eingeben. Aufgabe AU-5- INTERAKTIV (b) Huffman-Kodierung Gegeben sei eine Zeichenmenge A mit zugehöriger Wahrscheinlichkeitsverteilung p für das Auftreten der Zeichen: A a b c d e f g p /49 /7 3/49 5/49 /49 9/49 3/49 Analysieren Sie die folgenden Kodierungen c a, c b und c c, im Hinblick darauf, ob sie äquivalent sind zu einer Huffman-Kodierung der obigen Zeichenmenge samt Wahrscheinlichkeitsverteilung. Geben Sie Gründe an, falls es nicht zur Übereinstimmung kommt. a b c d e f g a) c a : b) c b : c) c c : i

(a) Das Codewort von g ist ein Präfix der Codewörter für a, b und c. Somit kann dies keine gültige Huffman-Kodierung sein, da diese immer die Fano-Bedingung erfüllen muss. (b) Die Fano-Bedingung wird von dieser Kodierung erfüllt, und die Codelänge L A,p (c b ) = 2 29 /49 ist minimal (dies kann über eine eigene Kodierung berechnet werden, siehe Abbildung). Somit ist dies eine gültige Huffman Kodierung. d 5 c 3 a b 7 g 3 e f 9 4 2 9 6 29 49 Skript ID-9756 ii

Codelänge nach Abbildung: 3 2+ 2+9 2+7 3+5 4+3 5+ 5 49 = 2 29 /49 = L A,p (c b ) Hinweis: Der Huffman-Algorithmus erzeugt eine minimale Kodierung, die aber nicht eindeutig ist. Deshalb ist es egal, dass die Kodierung im Baum nicht genau der Kodierung c b entspricht. Beim Rechnen von Hand ist es meist geschickter, den Huffman-Baum anders herum zu zeichnen, vgl. Folien. (c) Die Codelänge dieser Kodierung ist nicht minimal: L A,p (c c ) = L A,p (c b ) + (4 5) + (4 3) 49 7 + (4 5) 3 49 = L A,p (c b ) 49 + 7 3 49 = L A,p(c b ) + 3 49 > L A,p(c b ) Also kann diese Kodierung keine Huffman Kodierung für die vorgegebene Wahrscheinlichkeitsverteilung sein. Aufgabe 2 HU-5- Für zuhause Huffman-Kodierung Folgende Zeichenkette sei repräsentativ für weitere Daten, die noch folgen werden. dadabdadcbddaadbdadaccabdaaadbcd Bisher wurden die Daten wie folgt abgespeichert: a =, b =, c = und d =. a) Erzeugen Sie anhand der durch den obigen Datenstring gegebenen Wahrscheinlichkeitsverteilung eine Huffman-Kodierung für die Zeichen a, b, c und d. Die Zeichenkette ist 32 Zeichen lang. Die enthaltenen Zeichen treten mit folgenden Häufigkeiten auf: Buchstabe Häufigkeit resultierende Wahrscheinlichkeit a,34375 b 5,5625 c 4,25 d 2,375 Aufgrund der Wahrscheinlichkeiten wird zuerst {c} mit {b}, dann {b, c} mit {a} und schließlich {a, b, c} mit {d} zusammengefasst. iii

a b 5 c 4 d 2 9 2 32 Skript ID-9762 Danach werden aus dem Huffman-Baum die folgenden Kodierungen abgelesen: Codewort Kodierung a b c d b) Wie groß ist die erwartete relative Ersparnis an Speicherplatz durch Verwendung des Huffman-Codes zum Abspeichern der Zeichen? Die durchschnittliche Länge eines Codewortes ist, 34375 2 +, 5625 3 +, 25 3 +, 375 =, 9625. Die erwartete relative Ersparnis ist demnach, 9625/2 =, 46875, also knapp 5%. iv

Aufgabe 3 AU-5-2 INTERAKTIV (b) Fehlererkennung Gegeben sei der folgende Code: Die Bits der Codewörter seien von links nach rechts mit,2,..., 7 durchnummeriert. Die Bits, 2, 4 (Zweierpotenzen) dienen als Prüfbits (p). Die restlichen Bits enthalten die Nutz-Bits (a). Anordnung der Bits: p p 2 a 3 p 4 a 5 a 6 a 7 mit p = a 3 a 5 a 7 p 2 = a 3 a 6 a 7 p 4 = a 5 a 6 a 7 a) Berechnen Sie den Code für die 4-Bit-Binärzahlen,,...,. Binärwert Dezimalwert Hammingcode a 3 a 5 a 6 a 7 p p 2 a 3 p 4 a 5 a 6 a 7 2 3 4 5 6 7 8 9 2 3 4 5 v

b) Sei ein übertragenes Codewort, bei dem eine Position g falsch übertragen wurde. Bestimmen Sie g und korrigieren Sie das Wort. Hinweis: Diese Kodierung ist so gewählt, dass die Summe der Positionen der Prüfbits, deren übertragener Wert nicht mit dem berechneten übereinstimmt, die Position des fehlerhaft übertragenen Bits angibt. Nutz-Bits: a 3 =, a 5 =, a 6 = and a 7 =. Berechnete Prüfbits: p =, p 2 = und p 4 =. Übertragene Prüfbits: p =, p 2 = und p 4 =. Also wurde das Bit an Position 5 (a 5 ) falsch übertragen. Das zum falsch übertragenen Wort gehörende Codewort ist also. Bemerkung: Wenn bekannt ist, dass ein Fehler auftrat, könnt dieser alternativ auch über einen Vergleich des übertragenen Codewortes mit den wirklichen Codewörtern und Berechnung der Hamming-Distanz ermittelt werden, was in diesem Fall aber etwas aufwändiger wäre. Aufgabe 4 AU-5-4 INTERAKTIV (a) Zahlendarstellung Stellen Sie die folgenden Zahlen so genau wie möglich als einfach genaue Gleitpunktzahl gemäß IEEE 754 sowie als Zweikomplement einer Festpunktzahl mit 6 Vorpunkt- und 6 Nachpunktbits dar. a) 2 3 4 Zur Darstellung der Zahl x = 2 3 in IEEE-754 wird wie folgt vorgegangen: 4 Zerlegung in Vorzeichen, Summe aus Zweierpotenzen, Bestimmung und Ausklammerung der größten Zweierpotenz, Umformung von Exponent zu Charakteristik. vi

2 3 4 = ( ) 2 3 4 = ( ) (8 + 4 + 2 + 4 ) = ( ) 2 3 ( + 2 + 2 4 + 2 5 ) = ( ) 2 3 27 ( + 2 + 2 4 + 2 5 ) Somit lässt sich x als Gleitpunktzahl im Format vcm mit v =, c = (3) = () 2 und m = darstellen. Für die Darstellung im Festpunktformat stellt man zunächst den Betrag der Zahl dar und bildet, falls die Zahl (wie hier) negativ ist, das 2er-Komplement. Durch die Zerlegung in Zweierpotenzen lässt sich leicht ablesen, dass 2 3 die Darstellung 4. hat. Die Bildung des 2er-Komplements erfolgt durch Negation und Addition von an der niederwertigsten Stelle, also nicht an der ersten Vorpunktstelle! Somit ergibt sich als Festpunktdarstellung für x der Bitstring b) 36 49 64 Analog zu (a)... 36 49 64 = ( ) 36 49 64 = ( ) (32 + 4 + 2 + 4 + 64 ) = ( ) 2 5 ( + 2 3 + 2 6 + 2 7 + 2 ) = ( ) 2 32 27 ( + 2 3 + 2 6 + 2 7 + 2 ) Als Gleitpunktzahl: v =, c = (32) = () 2 und m =. Als Festpunktzahl:.. vii

Aufgabe 5 AU-5-3 Zahlendarstellung Gegeben sei folgender Bitstring. b = Geben Sie den jeweiligen Dezimalwert dieses Strings an, wenn man ihn deutet als a) Dualzahl, b) Zahl im Zweikomplement, c) BCD-Zahl bzw. d) Gleitpunktzahl gemäß IEEE 754. a) 252346996 als Zahl zur Basis 2 2 3 + 2 28 + 2 26 + 2 25 + 2 22 + 2 2 + 2 9 + 2 6 + 2 2 + 2 + 2 8 + 2 5 + 2 3 b) 774982 als Zahl zur Basis 2 im 2er-Komplement 2 28 + 2 26 + 2 25 + 2 22 + 2 2 + 2 9 + 2 6 + 2 2 + 2 + 2 8 + 2 5 + 2 3 2 3 c) 9669528 als BCD-Zahl Teilung in 4-Bit Abschnitte, natürliche Fortsetzung d) 9943 2 3.883 25 als Gleitpunktzahl gemäß IEEE 754 x =( ) v ( + m ) 2 c q =( ) ( + (2 + 2 2 + 2 4 + 2 7 + 2 + 2 3 + 2 5 + 2 8 + 2 2 )) 2 44 27 =( ) ( + 2 2 (2 9 + 2 8 + 2 6 + 2 3 + 2 9 + 2 7 + 2 5 + 2 2 + )) 2 44 27 = 9943 2 3.883 25 viii

Aufgabe 6 HU-5-2 Für zuhause Zahlendarstellung Stellen Sie gemäß der folgenden Zahlenkodierungen so genau wie möglich dar. a) einfach genaue Gleitpunktzahl gemäß IEEE 754 Die Zahl / wird wie folgt zerlegt: Vorzeichen, (approximative) Summe aus Zweierpotenzen, Bestimmung und Ausklammerung der größten Zweierpotenz, Umformung von Exponent zu Charakteristik. = ( ) = ( ) ( + 2 4 + 2 5 + 2 8 + 2 9 +... ) = ( ) + ( 2 4i + 2 4i ) i= ( ) 2 ( + 2 4 + 2 5 + 2 8 + 2 9 + 2 2 + 2 3 + 2 6 + 2 7 + 2 2 + 2 2 + 2 23 ) = ( ) 2 27 27 ( + 2 4 + 2 5 + 2 8 + 2 9 + 2 2 + 2 3 + 2 6 + 2 7 + 2 2 + 2 2 + 2 23 ) Bei der 3. Umformung wurde nach oben gerundet. Somit lässt sich x als Gleitpunktzahl im Format vcm mit darstellen. v =, c = (27) = () 2, M = b) 2er Komplement einer Festpunktzahl mit 6 Vorpunkt- und 6 Nachpunktbits Trick: Für die Berechnung der approximativen Summe aus Zweierpotenzen kann man auch das folgende Verfahren benutzen. Man multipliziert die Nachpunktstellen(!) mit 2 bis man die Periode erkennt und leitet aus den resultierenden Vorpunktstellen (von oben nach unten lesen) die Binärdarstellung ab., 2 =, 2, 2 2 =, 4 ix

, 4 2 =, 8, 8 2 =, 6 Die Eins wird nicht für den nächten Schritt übernommen., 6 2 =, 2 Ab hier erkennt man die Periode, die nächste Zeile beginnt wieder, 2 2 =, 4 mit, 2, 4 2 =, 8, 8 2 =, 6 usw. Die Binärdarstellung von sieht folgendermaßen aus:,. Für die Aufgabe muss nach der 6ten Stelle gerundet werden. Für die Festpunktzahl kann man einen Großteil der Mantisse wiederverwenden, durch Rundung ergibt sich hier,. Aufgabe 7 HU-5-3 Für zuhause Zahlendarstellung Gegeben seien die Zahlen A, B in der bekannten IEEE-754-Darstellung: A ˆ= B ˆ= Berechnen Sie die Summe S = A + B ohne Umwandlung in Dezimalzahlen und geben Sie S korrekt in IEEE-754-Darstellung an. Ohne Umwandlung in reelle Zahlen: x

Mit Umwandlung in reelle Zahlen. A: v =, c = 2 7 + 2 + 2 = 3 e = 3 27 = 4 2 + 2 4 + 2 6 Zahl = 2 4 ( + m ) = 2 4 ( + 2 + 2 4 + 2 6 ) = 25, 25 B: v =, c = 2 7 + 2 = 3 e = 3 27 = 3 2 + 2 4 + 2 5 Zahl = 2 3 ( + m ) = 2 3 ( + 2 + 2 4 + 2 5 ) = 2, 75 S: Summe = 38 v =, 38 = 2 5 + 2 2 + 2 = 2 5 ( + 2 3 + 2 4 ) c = 5 + 27 = 32 : und m = xi