30.11.2012 Aufrufe

Grundkurs Informatik Aufgabensammlung mit Lösungen Teil 1

Grundkurs Informatik Aufgabensammlung mit Lösungen Teil 1

Grundkurs Informatik Aufgabensammlung mit Lösungen Teil 1

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Aufgaben und <strong>Lösungen</strong> 1-41<br />

3 Codierung<br />

3.1 Grundbegriffe<br />

Aufgabe 3.1.1 (T0)<br />

Was ist der Unterschied zwischen einer Codierung und einer Chiffrierung?<br />

Lösung:<br />

Es seien A* und B* Nachrichtenräume über Alphabeten A={a1,a2,...an} bzw. B={b1,b2,...bm}.<br />

Eine umkehrbar eindeutige Abbildung von A* in B* heißt Codierung. Eine Chiffrierung ist<br />

ebenfalls eine Codierung, jedoch <strong>mit</strong> der Einschränkung, dass die Quellmenge und die Zielmenge<br />

nur Einzelzeichen umfassen. So ist beispielsweise die Darstellung der Buchstaben,<br />

Ziffern und Senderzeichen als binärer ASCII-Code keine Chiffrierung. Die Umschrift der kyrillischen<br />

Buchstaben in lateinische ist dagegen eine Chiffrierung.<br />

Aufgabe 3.1.2 (L1)<br />

Geben Sie für die folgenden Manipulationen auf ASCII-Zeichen einfache logische Operationen<br />

<strong>mit</strong> Bit-Masken an:<br />

a) Extraktion des Zahlenwertes aus den ASCII-Codes für die Ziffern 0 bis 9.<br />

b) Umwandlung von Kleinbuchstaben in Großbuchstaben und umgekehrt.<br />

Lösung:<br />

a) Die ASCII-Codes der Ziffern 0 bis 9 lauten: 011 0000 = „0“ bis 011 1001 = „9“<br />

Ist bekannt, dass der umzuwandelnde Code c einer Ziffer entspricht, so kann man aus c<br />

den entsprechenden Zahlenwert z sehr einfach durch folgende UND-Verknüpfung extrahieren:<br />

z = c 0001111 für 7-Bit ASCII-Codes<br />

z = c 00001111 = c 0Fhex für 8-Bit ASCII-Codes<br />

Soll zusätzlich sichergestellt werden, dass das Code-Wort c tatsächlich eine Ziffer ist, so<br />

wäre zu prüfen, ob 0110000

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!