Übungsblatt 1 zur Vorlesung - iste.uni-stuttgart.de

Werbung
Universität Stuttgart
Institut für Rechnergestützte Ingenieursysteme
Univ.-Prof. Hon.-Prof. Dr. Dieter Roller
Übungsblatt 2 zur Vorlesung ”Grundlagen der Informatik I” im WS 2015/16
Aufgabe 2.1 - Thema: Algorithmus - Parkscheinautomat
Algorithmen existieren nicht nur für das Rechnen mit Zahlen, sondern auch für andere
Probleme im Bereich der Informationsverarbeitung. Wichtig ist, dass ein Algorithmus immer
eine eindeutige Vorschrift darstellt.
a. Entwerfen Sie einen Algorithmus zur Bedienung eines Parkscheinautomaten!
Berücksichtigen Sie dabei, dass der Automat sowohl Geldscheine als auch Hartgeld und
Geldkarten nimmt und eine Quittung ausgegeben werden kann. Halten Sie außerdem
die nötigen Vorbedingungen wie Öffnungszeiten u.ä. fest.
b. Vergegenwärtigen Sie sich die Eigenschaften eines Algorithmus! Können Sie sich
Algorithmen vorstellen, die nicht terminieren oder deterministisch sind aber doch sinnvoll
Verwendung finden? Geben Sie je ein Beispiel.
Aufgabe 2.2 - Thema: Codierung
Die folgenden 2 Texte a) und b) sind in ASCII ohne jedwede Erweiterung codiert dargestellt;
der besseren Lesbarkeit halber sind die Bits in 4-Bit-Gruppen aufgeteilt, ansonsten wurde
kein wie immer geartetes Trennzeichen eingeführt. Entschlüsseln Sie zunächst die Texte in
Teilaufgabe a. und b.!
a. 1001 0011 1011 1011 0011 0110 1111 1110 0101 1011 0111 0000 1111 0100 1101
0011 1010 11
b. 1010 0111 0101 0010 1010 1100 0100 1001 0011 0001 0110 0111 0100 0111 1000
1011 0000 1010 1010 1100 0101 1001 0001 0100 1010 0010 1100 1110
c. Auf einem Rechner mit einer Wortlänge, die eine Zweierpotenz ist, erscheint obige
Codierung als etwas schwierig interpretierbar. Wie kann die Codierung sinnvoll auf eine
solche Wortlänge erweitert werden?
d. Gegeben seien folgende Symbole: Rot, Gelb, Grün, Blau, Schwarz, Weiss, Türkis,
Violett, und Grau. Entwerfen Sie eine binäre Codierung für diese Symbole derart, dass
alle Codewörter gleich lang sind und mit einer minimalen Anzahl von Bits auskommen.
e. Sie wollen Ihren Code mittels ungerader Parität vor Übertragungsfehlern sichern. Wie
muss der Code erweitert werden?
Grundlagen der Informatik I – Blatt 2
Seite 1 von 2
Universität Stuttgart
Institut für Rechnergestützte Ingenieursysteme
Univ.-Prof. Hon.-Prof. Dr. Dieter Roller
Aufgabe 2.3: - Thema: Codeworte variabler Länge und Dekodierung
Codeworte mit variabler Länge werden unter anderem zur kompakten Übertragung von
Daten verwendet. Dabei werden beispielsweise häufige Buchstaben wie "e" mit einem
kurzen Codewort codiert, seltene Buchstaben mit einem längeren. Derartige Codeworte
werden ohne Zwischenraum aneinandergefügt. Damit der Text eindeutig interpretierbar
bleibt, ist zu prüfen, ob die Fanobedingung eingehalten wird.
a. Erfüllen die folgenden Worte eines Codes die Fanobedingung: a=1 c=00 d=01 e=10 ?
b. Decodieren Sie die folgende in obigem Code geschriebene Botschaft: 101100
c. Wie muss der Code angepasst werden, wenn er der Fano-Bedingung gehorchen und
weiterhin eine variable Wortlänge aufweisen soll?
d. Sie wollen die Nachricht „reservierung“ unter Einhaltung der Fanobedingung codieren.
d1. Geben Sie einen möglichst einfachen Code mit variabler Länge an, der die FanoBedingung einhält!
Als optimale Lösung können Sie das Verfahren der Huffman Codierung verwenden
(siehe z.B.
http://www.pohlig.de/Unterricht/Inf2002/Tag44/29.2_Huffmann_Algorithmus.htm).
d2. Codieren Sie in dem von Ihnen entworfenen Code die angegebene Nachricht.
e. Jemand schickt Ihnen eine Mitteilung. Es soll sich dabei um eine Folge von hexadezimal
(also zur Basis 16) codierten ASCII-Zeichen handeln. Je zwei aufeinanderfolgende
Hexadezimalzeichen ergeben ein ASCII-Zeichen (um den Text besser lesen zu können,
wurde er in gleichlange Blöcke geteilt). Wie lautet die nachfolgende Mitteilung? Können
Sie sich vorstellen wozu diese Mitteilung verwendet wird?
687474 703A2F 2F7777 772E69 726973 2E756E 692D73
747574 746761 72742E 6465
Grundlagen der Informatik I – Blatt 2
Seite 2 von 2
Herunterladen