Übung zur Vorlesung Digitale Medien. Doris Hausen Ludwig-Maximilians-Universität München Wintersemester 2010/2011

Ähnliche Dokumente
Digitale Medien. Übung

Übung zur Vorlesung Digitale Medien. Dr. Alexander De Luca Ludwig-Maximilians-Universität München Wintersemester 2013/2014

Übung zur Vorlesung Digitale Medien. Hanna Schneider Ludwig-Maximilians-Universität München Wintersemester 2014/2015

Übung zur Vorlesung. Digitale Medien. Vorlesung: Heinrich Hußmann Übung: Renate Häuslschmid, Hanna Schneider

Übung zur Vorlesung. Vorlesung: Heinrich Hußmann Übung: Renate Häuslschmid, Hanna Schneider

(Prüfungs-)Aufgaben zur Codierungstheorie

2. Digitale Codierung und Übertragung

Digitale Medien. Vorlesung: Heinrich Hußmann Übung: Renate Häuslschmid. Übung zur Vorlesung

Medientechnik. Andreas Butz Ludwig-Maximilians-Universität München Sommersemester Vorlesungskonzept: Heinrich Hußmann

2. Digitale Codierung und Übertragung

Multimedia im Netz. Übung zur Vorlesung. Ludwig-Maximilians-Universität Wintersemester 2010/2011

Übung Praktische Informatik II

Beispiel: Zeigen Sie, dass H(x) = H 0 = I gilt, wenn alle Zeichen gleichwahrscheinlich sind.

Grundlagen der Technischen Informatik. 3. Übung

Organisation. Was kommt zum Test? Buch Informatik Grundlagen bis inkl. Kapitel 7.4 Wissensfragen und Rechenbeispiele

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

2. Digitale Codierung und Übertragung

Organisatorisches. Gilbert Beyer und Annabelle Klarl. Einführung in die Informatik. Zentralübung zur Vorlesung Einführung in die Informatik

Redundanz. Technische Informationsquelle Entropie und Redundanz Huffman Codierung. Martin Werner WS 09/10. Martin Werner, Dezember 09 1

Einführung in die Programmierung. Organisatorisches. Skript zur Vorlesung Einführung in die Programmierung

Datenkompression. 1 Allgemeines. 2 Verlustlose Kompression. Holger Rauhut

Probeklausur Digitale Medien

Digitale Medien. Übung zur Vorlesung. Vorlesung: Heinrich Hußmann Übung: Renate Häuslschmid

Optimalcodierung. Thema: Optimalcodierung. Ziele

There are only 10 types of people in the world: those who understand binary, and those who don't

Zahlen im Computer (Klasse 7 Aufbaukurs Informatik)

Informationsgehalt einer Nachricht

Algorithmen und Datenstrukturen

Lösung 1. Übungsblatt

2. Digitale Codierung und Übertragung

Es gibt drei verschiedene Veranstaltungen, die wir in dem Modul "Programmierung" anbieten

Einführung in die Programmierung

3. Woche Information, Entropie. 3. Woche: Information, Entropie 45/ 238

Klausur Digitale Medien

Einführung in die Programmierung

Übungsblatt 5 - Musterlösung

Technische Informatik I SS 2005

Theoretische Grundlagen der Informatik

Kolmogoroffkomplexität Teil 3 Informationstheorie und Kodierung. Torsten Steinbrecher

Zahlensysteme und Kodes. Prof. Metzler

Grundlagen der Technischen Informatik. 3. Übung

Lösung 1. Übungsblatt

, 2014W Übungstermin: Fr.,

2. Digitale Codierung und Übertragung

Basisinformationstechnologie I

TGI-Übung Dirk Achenbach

1. Tutorium Digitaltechnik und Entwurfsverfahren

Einführung in die Informatik: Programmierung und Softwareentwicklung

Vorkurs Informatik WiSe 17/18

Fortgeschrittene Funktionale Programmierung

DuE-Tutorien 16 und 17

Algorithmen und Datenstrukturen (für ET/IT) Programm heute. Wintersemester 2012/13. Dr. Tobias Lasser. 7 Fortgeschrittene Datenstrukturen

Molekulare Bioinformatik

, 2015S Übungstermin: Mi.,

Tutorium Rechnerorganisation

1. 4-Bit Binärzahlen ohne Vorzeichen 2. 4-Bit Binärzahlen mit Vorzeichen 3. 4-Bit Binärzahlen im 2er Komplement 4. Rechnen im 2er Komplement

Kapitel 5: Daten und Operationen

DuE-Tutorien 17 und 18

Kapitel 7: Optimalcodierung und Huffman Coding

Kompression. Tim Kilian

Musterlösung 1. Mikroprozessortechnik und Eingebettete Systeme 1 WS2015/2016

Technische Informatik - Eine Einführung

Übung zur Vorlesung. Digitale Medien. Vorlesung: Heinrich Hußmann Übung: Renate Häuslschmid, Hanna Schneider

Klausur "Informationstechnische Grundlagen" SS 2013

Algorithmen und Datenstrukturen (für ET/IT)

2. Digitale Codierung und Übertragung

Vorlesung 1 Medizininformatik. Sommersemester 2017

Farb-Fernsehsignal (Composite FBAS)

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

Zahlen- und Buchstabencodierung. Zahlendarstellung

BITte ein BIT. Vom Bit zum Binärsystem. A Bit Of Magic. 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen?

Grundlagen der Technischen Informatik. 3. Übung

RLE Arithm. Shannon Fano Huffman Grenzen. Komprimierung. Ingo Blechschmidt, Michael Hartmann. 6. Dezember 2006

Programmierkurs (Java) 30. Oktober 2017 Institut für Informatik ÜBUNGBLATT 02. Dieses Übungsblatt wird in der Woche des 06. November besprochen.

Informationstheorie und Codierung

2 Informationstheorie

6 Ü B E R S E T Z U N G E N U N D C O D I E R U N G E N. 6.1 von wörtern zu zahlen und zurück Dezimaldarstellung von Zahlen Num 10

Informationsmenge. Maßeinheit: 1 Bit. 1 Byte. Umrechnungen: Informationsmenge zur Beantwortung einer Binärfrage kleinstmögliche Informationseinheit

Algorithmen und Datenstrukturen (für ET/IT)

Vorkurs Informatik WiSe 16/17

Grundlagen der Informatik. Mathias Buhr

Computer rechnen nur mit Nullen und Einsen

Dualzahlen

Rechnergrundlagen SS Vorlesung

Prof. Dr. Stefan Weinzierl Audiosymbole mit einer Länge von 8 bit werden mit einem Paritätsbit zur Fehlererkennung kodiert.

Klausur Digitale Medien

1. Stellenwerte im Dualsystem

Personen. Grundlagen der Programmierung 2. Webseite und . Vorlesung

Grundlagen der Informatik II

Sprachen und Automaten. Tino Hempel

I: Daten und Codierung

Musterlösung: 11. Dezember 2014, 10:43. Informationstheorie und Entropiekodierung

2. Digitale Codierung und Übertragung

Klausur "Informationstechnische Grundlagen" SS 2012

Huffman-Kodierung. Fachbereich Medieninformatik. Hochschule Harz. Huffman-Kodierung. Referat. Henner Wöhler. Abgabe:

Zahlensysteme und ihre Anwendung

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

Technische Informatik I

Transkript:

Übung zur Vorlesung Digitale Medien Doris Hausen Ludwig-Maximilians-Universität München Wintersemester 2010/2011 1

Übungsbetrieb Informationen zu den Übungen: http://www.medien.ifi.lmu.de/dm http://www.die-informatiker.net Praktische Anwendungen des theoretischen Vorlesungsstoffs Wichtige Voraussetzung für die Klausur Bonuspunkte für die Klausur (maximal 15% der Klausurpunkte) 2

Anmeldung für den Übungsbetrieb Anmeldung ist Voraussetzung für Übungsteilnahme UniWorx: https://www.pst.ifi.lmu.de/uniworx Benötigt Rechnerkennung: http://www.rz.ifi.lmu.de/merkblaetter/rechneranmeldung _WS.html Anmeldung für die Übungsgruppen: ab Freitag, 29.10. 16 Uhr Hinweis: Mails von UniWorx werden an kennung@cip.ifi.lmu.de versendet (regelmäßig Adresse checken oder weiterleiten!) 3

Übungsblätter Ausgabe: - jeden Montag ab 10 Uhr -auf http://www.medien.ifi.lmu.de/dm/ Abgabe: - jeweils spätestens übernächster Freitag 12 Uhr - über https://www.pst.informatik.uni-muenchen.de/uniworx/ - Achtung: erneutes Hochladen überschreibt die alte Lösung 4

Benotung Klausur am Ende des Semesters Nachholklausur am Ende der Semesterferien (auch zur Notenverbesserung) Abgabe der Übungsblätter: freiwillig ABER: dringend empfohlen Anreiz: Bonuspunkte aus dem Übungsbetrieb (max. 15%) 5

Plagiate Abschreiben von Kommilitonen von anderen Quellen (z.b. Wikipedia) Ist in keiner Weise erlaubt! Wenn Sie erwischt werden, wird das ganze Übungsblatt oder auch alle Übungsblätter mit 0 Punkten bewertet Im Zweifelsfall immer vor der Abgabe nachfragen. Wir prüfen nach eventuell auch erst nach Ende der Übungen. Erlaubt ist: Zusammen lernen Links zu guten Quellen austauschen Gemeinsames Code Review Tricks verraten 6

Ansprechpartner Gegenseitiger Austausch auch über das Forum ist sehr gewünscht. Individuelle Probleme (z.b. mit der Korrektur) lassen sich aber meist deutlich besser persönlich klären. Daher bitte direkt den betroffenen Tutor oder die Übungsleitung ansprechen. 7

1. Übungsblatt Zahlensysteme Entropie Huffman-Codierung 8

Konvertierung zwischen ganzen Binär- und Dezimalzahlen Ganze Binärzahlen nach Dezimal Arbeite die Ziffern der Zahl von rechts nach links durch. Falls eine Ziffer an der Position z gleich 1 ist (Achtung: Die rechteste Position ist 0 und nicht 1!), rechne 2 hoch z und addiere die Lösung zum Gesamtergebnis. Beispiel: 1001011 nach Dezimal 1 x 2 0 + 1 x 2 1 + 1 x 2 3 + 1 x 2 6 = 1 + 2 + 8 + 64 = 75 Ganze Dezimalzahlen nach Binär Teile die Zahl durch 2. Der verbleibende Rest ist die nächste Ziffer (fülle von rechts nach links auf!). Höre auf, sobald das Ergebnis 0 wird. Beispiel: 75 nach Binär 75 / 2 = 37 Rest: 1 37 / 2 = 18 Rest: 1 18 / 2 = 9 Rest: 0 9 / 2 = 4 Rest: 1 4 / 2 = 2 Rest: 0 2 / 2 = 1 Rest: 0 1 / 2 = 0 Rest: 1 Mehr Infos: http://www.arndt-bruenner.de/mathe/scripts/zahlensysteme.htm 9

Konvertierung zwischen Binär- und Dezimalzahlen zwischen 0 und 1 Binär nach Dezimal (Komma) Arbeite die Ziffern der Zahl hinter dem Komma von links nach rechts durch. Falls eine Ziffer an der Position z gleich 1 ist (Achtung: Die linkeste Position ist diesmal 1!), rechne 2 hoch -z und addiere die Lösung zum Gesamtergebnis. Beispiel: 0,0101 nach Dezimal 1 x 2-2 + 1 x 2-4 = 0,25 + 0,0625 = 0,3125 Hinweis: 2 -x = 1 / 2 x Dezimal nach Binär (Komma) Multipliziere die Zahl mit 2. Die Zahl vor dem Komma ist die nächste Zahl des Ergebnisses. Entferne die Zahl vor dem Komma. Wiederhole das Verfahren, bis nichts mehr rechts vom Komma steht oder sich die Ergebnisse wiederholen. Beispiel: 0,3125 nach Binär 0,3125 x 2 = 0,625 0,625 x 2 = 1,25 0,25 x 2 = 0,5 0,5 x 2 = 1 => 0,0101 Mehr Infos: http://www.arndt-bruenner.de/mathe/scripts/zahlensysteme.htm 10

Text ASCII Code 1 Byte / Zeichen Nonsense Dezimal: 78 111 110 115 101 110 115 101 N o n s e n s e Binär: 01001110 N 01101111 o 01101110 n 01110011 s 01100101 e 01101110 n 01110011 s 01100101 e 8 Byte 11

Lauflängencodierung (RLE) Lauflängencodierung (RLE) AAAAAAAAAAAAAAAAAAAA 20 Zeichen #A20 4 Zeichen Dies ist ein Beispieltext. 26 Zeichen Dies ist ein Beispieltext. 26 Zeichen Idee: Ersetzen einer Folge gleicher Zeichen durch 1 Zeichen + Zähler Funktioniert besser mit Bildern als mit Text 12

ASCII: aaaaaabbbcde 96 Bit Morse-Code (2 Bit / Symbol):.-.-.-.-.-.- -... -... -... -.-. -... 86 Bit aaaaaabbbcde Lauflängenkodierung: #a6#b3cde 72 Bit Huffmankodierung: 11111101010100100010000 23 Bit Arithmetische Kodierung: 000000101010110100111 21 Bit 13

Jede Nachricht hat einen Informationsgehalt, die Entropie. Generell: Die Entropie gibt an, wie überraschend es ist, in der Nachricht ein bestimmtes Zeichen anzutreffen. AAAAAAAAAAAAAA AAAAAAAAAAAAAA AAAAAAAAAAAAAA AAAAAAAAAAAAAA AAAAAAAAAAAAAA AAAAAAAAAAAAAA AAAAAAAAAAAAAA p(a) = 1 Entropie H = 0 14

p(a): x(a): Wahrscheinlichkeit, dass a auftritt Anzahl der Entscheidungen für a x(a) = ld ( 1 / p(a) ) AAAAAAAAAAAAAA AAAAAAAAAAAAAA AAAAAAAAAAAAAA AAAAAAAAAAAAAA BBBBBBBBBBBBBB BBBBBBBBBBBBBB CCCCCCCCCCCCC DDDDDDDDDDDDD Ist es A? ja nein Ist es B? ja nein p(a) = 0,5 p(b) = 0,25 p(c) = 0,125 p(d) = 0,125 x(a): Ist es C? ja nein A B C D 1 2 3 3 15

Berechnung des Zweier-Logarithmus ld aus dem natürlichen Logarithmus ln a = b x x = log b a Beispiele: 256 = 2 x x = log 2 256 x = 8 1.000.000 = 10 x x = log 10 1.000.000 x = 6 log b x = log y x / log y b log 2 x = ln x / ln 2 log 2 x = lg x / lg 2 log 2 256 im Taschenrechner: 256 eintippen log drücken / drücken 2 eintippen log drücken = drücken log e heißt ln (natürlich Log.) log 2 heißt ld (oder lg im Englischen) log 10 heißt lg (log auf Taschenrechnern) Online Scientific Calculator : http://www.calculator.com http://www.google.com 16

p x A 0,5 1 B 0,25 2 C 0,125 3 D 0,125 3 H = 1,75 Beispielcode: c c ( x(a Entropie H = p(a) * Durchschnittlicher Entscheidungsgehalt eines Zeichen (p(a): Wahrscheinlichkeit, dass a auftritt x(a): Anzahl der Entscheidungen für a) L = p(a) c(a) Durchschnittlicher Wortlänge pro Zeichen A 00 2 B 01 2 C 10 2 D 11 2 R = L - H Redundanz eines Codes L = 2 R = 0,25 Je kleiner, desto besser! 17

Samuel Morse..... /...----. -- /....- --..-..-.. / -- ---.-......-.-.- /.. / -.. --- / -.-. --- -.......-.-.- Idee: Je häufiger ein Zeichen vorkommt, desto kürzer das kodierte Symbol => kürzere Nachrichten mit gleichem Inhalt! Allerdings: Kein binärer Code (kurz., lang - und Pause /)! Häufigkeiten falsch eingeschätzt! 18

David A. Huffman: In optimalem Code müssen die beiden Symbole der niedrigsten Häufigkeit mit gleicher Länge codiert sein. 19

AAAAHHABBLLABBLAAA A 9/18 0,5 B 4/18 0,222 L 3/18 0,166 H 2/18 0,111 Huffman-Codierung 1. Ermittlung der Häufigkeiten 2. Aufbau des Codebaums (von unten) 3. Code 0 HLBA 1,0 HL 0,277 0 1 HLB 0 0,5 1 0,111 0,166 0,222 0,5 H L B A 1 A 1 B 01 L 001 H 000 20

aaaaaabbbcde Huffman-Codierung Ergebnis: 11111101010100100010000 1. Ermittlung der Häufigkeiten 2. Aufbau des Codebaums 3. Code Warum nicht dieser kürzere Code? a 1 b 01 c 10 d 11 e 100 Nicht dekodierbar! Fano-Bedingung verletzt! a 1 b 01 c 001 d 0001 e 0000 21

Ist der Code optimal? p x a 0,5 1 b 0,25 2 c 0,083 3,58 d 0,083 3,58 e 0,083 3,58 Huffman-Codierung x(a) = ld ( 1 / p(a) ) H = p(a) x(a) H = 1,896 L = p(a) c(a) c c a 1 1 b 01 2 c 001 3 d 0001 4 e 0000 4 L = 1,917 R = 0,021 R = L - H Generell: Huffman-Code optimal, falls Häufigkeiten negative/kehrwerte von Zweierpotenzen sind, also 0,5, 0,25, 0,125 22

Anderes Beispiel: CECEDBCABE Huffman-Codierung 1. Ermittlung der Häufigkeiten 2. Aufbau des Codebaums 3. Code A 1/10 0,1 B 2/10 0,2 C 3/10 0,3 D 1/10 0,1 E 3/10 0,3 Code: A 000 B 01 C 10 D 001 E 11 23