3. Codierung von Nachrichten

Größe: px
Ab Seite anzeigen:

Download "3. Codierung von Nachrichten"

Transkript

1 3 Codierung von Nachrichten Folie 3. Codierung von Nachrichten 3. Information und Nachricht Information und Nachricht sind grundlegende Begriffe in der Informatik. Trotz ihrer alltäglichen Verwendung, wie z.b. sich Informationen verschaffen, Nachrichten hören, den Nachbarn verständigen, Informationen und Meinungen austauschen, ein Telegramm verschicken, Informationsgesellschaft, Informationszeitalter, sind Information und Nachricht schwierige Begriffe, für die es unterschiedliche Definitionen gibt und die je nach Anwendung in unterschiedlicher Bedeutung benutzt werden. Definition 3- Informationen sind Interpretationen von Nachrichten. Eine Nachricht versenden bedeutet den Transport von Informationen.

2 3 Codierung von Nachrichten Folie Nachrichten Allgemein formuliert sind Nachrichten Worte, bestehend aus Elementen (Zeichen, Buchstaben oder Ziffern genannt) einer vereinbarten, endlichen Menge. Eine solche Menge von Zeichen nennt man Alphabet. Alphabet: endliche Menge von Zeichen A = {a,...,a n }; A bin = {0,}; Binärziffern A dez = {0,,,9}; Dezimalziffern A morse = {,- }; Zeichen des Morsealphabets ohne Zwischenraum A a-num = {A,...,Z,0,,9,Sonderzeichen}; alphanumerisches Alphabet Worte: Folge verketteter, nicht notwendig verschiedener Zeichen. A = Menge der Worte der Länge n über A, n IN A * = Menge aller Worte über A Ein Wort a A * der Länge n, n IN, schreibt man auch als a = a a 2...a n. a i A bezeichnet das i-te Zeichen des Wortes a mit < i < n. In der Nachrichtenübertragung wird ein Signal aus einer Nachrichtenquelle mittels eines Senders über einen Kommunikationskanal geschickt und dann von einem Empfänger zur Nachrichtensenke geleitet (Allgemeines Kommunikationsmodell von Shannon und Weaver). Das Modell kann auf einen Großteil der Kommunikationsformen in der Nachrichtenübertragung angewendet werden.

3 3 Codierung von Nachrichten Folie 3 Beispiel: Verbale Kommunikation Gehirn Informationsquelle Sprachsystem (erzeugt Schalldruck = codiertes Signal) Transmitter (Sender) Luft Kanal Ohr mit Nervenbahnen Empfänger Gehirn des Kommunikationspartners Informationssenke Die folgende Abbildung verdeutlich das zuvor beschriebene Kommunikationsmodell. Nachrichtenquelle Sender Kanal Empfänger Nachrichtensenke Signalerzeugung Signalverarbeitung Codierung Decodierung Störung Quellencodierung Kanalcodierung Verarbeitungscodierung

4 3 Codierung von Nachrichten Folie Einführung in die Codierung Definition 3-2: Code Ein Code ist eine Vorschrift zur eindeutigen Zuordnung der Zeichen einer Menge A (Ausgangsmenge) zu denjenigen Zeichen einer Menge B (Zielmenge). Die Zuordnung muss nicht eindeutig umkehrbar sein; Zusammengesetzte Zeichen werden als Codewörter bezeichnet. Codierungsregeln legen fest, wie die Zielmenge bei bekannten Ausgangsmenge gebildet wird. Die Codierung dient: dem zweckmäßigen und einfachen Übertragen und Verarbeiten von Informationen, zur Darstellung der Informationen mit einer möglichst geringen Anzahl von Zeichen, dem Erzielen einer gesicherten Datenübertragung. Codes werden grundsätzlich in zwei Gruppen unterteilt: nicht-redundante Codes redundante Codes

5 3 Codierung von Nachrichten Folie 5 Definition 3-3: Redundanz Redundanz bezeichnet überflüssige Elemente in einer Nachricht, die keine zusätzliche Information liefern, sondern nur die beabsichtigte Grundinformation unterstützen. In der Datenverarbeitung wird dies dadurch erreicht, dass mehr Binärstellen verwendet werden, als zur Darstellung aller Elemente der Ausgangsmenge nötig wären. D.h. in einem redundanten Code existieren Codeworte, die nicht benutzt werden. Durch diese Redundanz ist es möglich, Fehler zu erkennen oder sogar zu korrigieren. Nicht-redundante Codes nutzen den zugrunde liegenden Zahlenbereich maximal aus.

6 3 Codierung von Nachrichten Folie 6 Codes nicht redundante Codes redundante Codes Zeichencodes Zahlencodes fehlererkennende Codes fehlerkorrigierende Codes ASCII-Code Gray-Code 2-aus-5- Codes Hamming- Code Fernschreibe- Code Aiken- Code gerade/ungerade ergänzte Codes Gruppen- Code Morse-Code BCD-Code Abbildung 3.: Überblick über verschiedene Codes

7 3 Codierung von Nachrichten Folie Zahlencodes Numerische Zeichen (Zahlen) müssen nicht unbedingt durch die Stellenschreibweise des Dualsystems (Polyadisches Zahlensystem) dargestellt werden. In der Digitaltechnik ist es oftmals günstiger, Dezimalzahlen Ziffer für Ziffer zu codieren und diese verschlüsselten Dezimalzahlen zu verarbeiten. Von den Zahlencodes sind die Tetradischen Codes die am häufigsten verwendeten Codes: Codierung eines beliebigen numerischen Zeichens (einer Ziffer) stets durch 4 bit; Anwendung vorrangig zur Darstellung dezimaler Ziffern; Vier Bit zur Darstellung der Dezimalziffern werden als Tetrade bezeichnet; 4 Bit ermöglichen 2 4 =6 Binärkombinationen; Darstellung der Dezimalzahlen 0-9 durch 0 Tetraden; die nicht benötigten sechs Tetraden werden Pseudotetraden genannt; Darstellung einer mehrstelligen Dezimalzahl eine Tetrade pro Dezimalstelle;

8 3 Codierung von Nachrichten Folie 8 Die wichtigsten Tetradischen Codes sind im Folgenden zum besseren Vergleich in einer Tabelle dargestellt. In der zweiten Zeile sind jeweils die Stellenwerte angegeben. Hex. Dual BCD Aiken 3- Exzess Gray keine keine Pseudo tetraden Pseudo Symme tetraden trielinie Pseudo- A tetraden B C Pseudo D 3 0 tetraden E Pseudo- Pseudo F 5 9 tetraden tetraden Tabelle 3.: Tetradische Codes

9 3 Codierung von Nachrichten Folie 9 Die Codes sind hinsichtlich ihrer Eignung für diverse Anwendungen auf die folgenden Merkmale hin zu überprüfen. Je mehr Merkmale auf einen Code zutreffen, desto vielseitig anwendbar wird er. Bewertbarkeit: Komplementierbarkeit: Konvertierbarkeit: Symmetrie: Additionsregeln, Übertragsbildung:

10 3 Codierung von Nachrichten Folie 0 Die Addition läuft bei allen Zahlencodes nach dem selben Grundprinzip ab (vgl. Abbildung 3.): Summanden Beginn in Tetraden zerlegen & niedrigstwertige auswählen aktuelle Tetraden tetradenweise Addition bis alle addiert duale Addition Überprüfung & Korrektur Übertrag nächst höhere Tetrade auswählen tetradenweise Addition Fertig Endergebnis als Tetraden Abbildung 3.2:Addition bei Zahlencodes (nach DIN 6600)

11 3 Codierung von Nachrichten Folie 3.4. BCD-Code (Binary Coded Decimal Code) Der BCD-Code ist so aufgebaut, dass jede Dezimalziffer 0-9 einfach als Dualzahl geschrieben wird. Die Stellenwerte der Tetraden entsprechen demzufolge genau denen des Dualsystems, nämlich (von links nach rechts gelesen): 2 3 =8, 2 2 =4, 2 =2, 2 0 =. Aufgrund dieser Stellenwertigkeit wird der BCD- Code auch Code genannt. Beispiel: Die vierstelligen Dezimalzahl 968 lautet im BCD-Code folgendermaßen: Eine Komplementbildung ist ohne weiteres nicht möglich. Die Verfeinerung des Prozesses "Überprüfung & Korrektur" sieht für den BCD-Code wie folgt aus: ja Summe =PT? nein ja Übertrag nein +0II0 keine Korrektur Abbildung 3.3: Verfeinerung des Prozesses "Überprüfung & Korrektur" für den BCD-Code

12 3 Codierung von Nachrichten Folie 2 Tritt bei der dualen Addition ein Übertrag in die nächst höhere Tetrade auf oder entspricht das Additionsergebnis einer Pseudotetrade (PT), so muss eine Korrekturaddition (+6 0 bzw ) durchgeführt werden. Beispiel: Addition im BCD-Code Übertrag. Summation: Pseudotetrade: Tetraden-Übertrag: Korrektur: Übertrag 2. Summation: =

13 3 Codierung von Nachrichten Folie Aiken-Code Beim Aiken-Code handelt es sich um einen symmetrischen Code. Ungerade Dezimalziffern sind genauso wie beim BCD- Code durch eine in der niedrigstwertigen Binärstelle gekennzeichnet. Die Binärstellen des Aiken-Code haben (von links nach rechts gelesen) die Stellenwerte 2, 4, 2,. Deshalb wird der Aiken-Code auch Code genannt. Aufgrund der symmetrischen Struktur dieses Codes kann das Komplement einfach durch bitweise Invertierung eines Codewortes gebildet werden. Die Verfeinerung des Prozesses "Überprüfung & Korrektur" sieht wie folgt aus: ja Summe =PT? nein ja Übertrag nein -0II0 +0II0 keine Korrektur Abbildung 3.4: Verfeinerung des Prozesses "Überprüfung & Korrektur" für den Aiken-Code

14 3 Codierung von Nachrichten Folie 4 Hierbei wird überprüft, ob das Ergebnis der dualen Addition einer Pseudotetrade (PT) entspricht. Ist dies der Fall, so muss überprüft werden, ob ein Übertrag vorlag. Falls ein Übertrag entstanden ist, wird die Zahl 00 2 (6 0 ) subtrahiert, ansonsten wird diese Zahl addiert. Falls ein Übertrag in die nächst höhere Tetrade entsteht, wird dieser auf jeden Fall bei der dualen Addition der nächst höheren Tetrade berücksichtigt. Beispiel: Addition im Aiken-Code Übertrag. Summation: Pseudotetrade: Tetraden-Übertrag: Korrektur: Übertrag 2. Summation: =

15 3 Codierung von Nachrichten Folie Exzess-Code Der 3-Exzess-Code entsteht aus der Addition der Zahl 00 2 zu den Worten des BCD-Codes. Hierbei handelt es sich ebenfalls um einen symmetrischen Code, der jedoch im Gegensatz zum BCD- oder Aiken-Code keine Stellenwertigkeit aufweist. Das Komplement kann einfach durch bitweise Invertierung eines Codewortes gebildet werden. Bei der Addition zweier Dezimalzahlen im 3-Exzess-Code, muss nicht geprüft werden, ob eine Pseudotetrade erzeugt wurde. Lediglich das Auftreten eines Übertrages muss kontrolliert werden (vgl. folgende Abb.). Der gegebenenfalls entstandene Übertrag wird auf jeden Fall bei der dualen Addition der nächst höheren Tetrade berücksichtigt. ja Übertrag nein +00II -00II Abbildung 3.5: Verfeinerung des Prozesses "Überprüfung & Korrektur" für den 3-Exzess-Code Beispiel: Addition im 3-Exzess-Code Übertrag. Summation: Tetraden-Übertrag: Korrektur: Übertrag 2. Summation: =

16 3 Codierung von Nachrichten Folie Gray-Code Der Gray-Code findet weniger Einsatz in arithmetischen Operationen, sondern wird hauptsächlich für die Analog-Dital- Umsetzung benutzt. Der Gray-Code ist ein einschrittiger Code, d.h. beim Übergang von einem Codewort auf das nächstfolgende ändert sich stets nur ein einziges Bit (Binärstelle). Daher können während der Übergänge keine Zwischenwerte auftreten. Der von E. Gray entwickelte Code wurde von Glixon so geändert, dass bei einem Übergang von dezimal 9 nach 0 sich ebenfalls nur eine Binärstelle ändert, und der Code damit zyklisch wird. Dezimalzahl ursprünglicher Gray-Code zyklischer Code nach Glixon

17 3 Codierung von Nachrichten Folie Abbildung 3.6: Winkelscheibe mit Glixon-Code

18 3 Codierung von Nachrichten Folie 8 Zusammenfassung Merkmal BCD Code Aiken Code 3-Exzess Code Gray-Code Bewertbarkeit Komplementbildung, d.h. Subtraktion gut, da die Codes Stellenwerte aufweisen schwierig, da eine Umrechnung notwendig ist einfache Umrechnung durch Vertauschen von en und 0en in jeder Stelle, da symmetrische Codes schlecht, da die Codes keine Stellenwerte aufweisen findet hier keine Anwendung Konvertierbarkeit direkt identisch Fallunterscheidung nötig => ggf. Korrekturaddition einfach immer 00 2 subtrahieren aufwendig Symmetrie Addition nicht vorhanden schwierig, da das Auftreten von sechs unterschiedlichen Pseudo-Tetraden erkannt werden muss vorhanden einfach, da die Korrektur nur vom Übertrag abhängt nicht vorhanden schwierig, Code wird jedoch i.d.r. nicht für Arithmetik genutzt

19 3 Codierung von Nachrichten Seite Zeichencodes Die Aufgabe alphanumerischer Codes ist die Darstellung und Übertragung von Buchstaben und Ziffern. Hierzu werden in der Praxis auch Zeichen mit besonderer Bedeutung, also Sonderzeichen, gezählt. Der Symbolumfang beträgt daher üblicherweise mindestens: 26 Buchstaben 5 Satzzeichen 0 Sonstige 5 Symbole Hieraus ergibt sich eine erforderliche Wortlänge von mindestens ld [5] 5,6 => 6 Bit.

20 3 Codierung von Nachrichten Seite 20 Aus den unterschiedlichen Anforderungen und Möglichkeiten der Datenübertragung in Netzen der Telekommunikation wurden mehrere internationale Normen entwickelt. Je nach historischem Stand der Technik und vorrangiger Aufgabe entstanden Codes von verschiedenem Umfang: Bezeichnung des Codes Fernschreibcode CCITT Nr. 2 (5 Spurlochstreifencode, 932) 26 Buchstaben bzw. Zahlen&Sonderzeichen + 2 Umschalten + Zwischenraum + Lochstreifentransport CCITT Nr. 5 ISO-7-Bit-Code 28 Zeichen (US)ASCII (American Standard Code for Information Interchange) EBCDIC-Code (Extended Binary Coded Decimal Interchange Code) Wortlänge 5 bit 7 bit 8 bit IBM-Zeichensatz für den PC 8 bit

21 3 Codierung von Nachrichten Seite Fernschreibecode Der Fernschreibecode oder Lochstreifencode ist der älteste der genannten Codes. K O M M U M 3 U H R Klartext. Informat.spur 2. Informat.spur Transportlochung 3. Informat.spur 4. Informat.spur 5. Informat.spur Nummer des Code- Worts Informationsstellen Trans port und Takt Zwischenraum Umschaltung Zahl Buchst. Buchstaben Codierte s Symbol Ziffern und Sonderzeichen 2 T A - 2 B? 3 C M 4 D + 5 E 3 6 F

22 3 Codierung von Nachrichten Seite 22 7 G 8 H 9 I 8 0 J Klingel K ( 2 L ) 3 M. 4 N, 5 O 9 6 P 0 7 Q 8 R 4 9 S ' 20 T 5 2 U 7 22 V = 23 W 2 24 X / 25 Y 6 26 Z + 27 < < Buchstabe 30 Zahl&Sonderz. 3 Zwischenraum 32 Tabelle 3.2: Lochstreifencode, CCITT-Code Nr. 2.

23 3 Codierung von Nachrichten Seite ASCII Der ASCII- (American Standard Code for Information Interchange), oder auch CCITT-Code Nr. 5 genannt, hat die zur Zeit weltweit größte Bedeutung für rechnerinterne Darstellung und für die Datenübertragung. Auf der Basis des ursprünglich für den englischsprachigen Raum konzipierten Codes wurden auch zahlreiche Varianten entwickelt, die innerhalb der Sonderzeichen auch andere Codierungen zulassen wie etwa Codierung der Umlaute der deutschen Sprache. Die folgende Tabelle zeigt die Bedeutung der einzelnen Steuerzeichen, Tabelle 3.4 die Zuordnung der Codeworte zu den Symbolen. NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF alle Leit. NUL Start Of Heading Start Of TeXt End Of TeXt End Of Transm ENQuiry ACKnowledged BELI BackSpace Horizontal Tab Line Feed VT FF CR SO SI DLE DCI XON DC3 XOF NAK Vertical Tab Form Feed Carriage Return Shift Out Shift In Data Link Space Device Control XON protocol Device Control 3 XOFf protocol Not AcKnow. SYN ETB CAN EM SUB ESC FS GS RS US DEL SYNchron. Idle End Transm. Block CANcel End of Medium SUBstitute ESCape File Separator Group Separator Record Separator Unit Separator DELete Tabelle 3.3: ASCII: Abkürzungen und Vollnamen der Steuerzeichen.

24 3 Codierung von Nachrichten Seite 24 Bit-Nr Steuerzeic hen Codierte Symbole Ziffern & Sonderzeichen Buchstaben & Sonderzeichen NUL DEL SP P ` p SOH DC! A Q a q STX DC2 " 2 B R b r ETX DC3 # 3 C S c s EOT DC4 $ 4 D T d t ENQ NAK % 5 E U e u ACK SYN & 6 F V f v 0 7 BEL ETB ' 7 G W g w BS CAN ( 8 H X h x HT EM ) 9 I Y i y LF SUB n : J Z j z 0 VT ESC + ; K [ k { FF FS, < L \ l 0 3 CR GS - = M ] m } 0 4 SO RS. > N ^ n ~ 5 SI US /? O _ o DEL Tabelle 3.4: CCITT-Code Nr. 5, auch ASCII genannt. 0 0

25 3 Codierung von Nachrichten Seite EBCDIC Der EBCDI-Code (Extended Binary Coded Decimal Interchange Code) wurde von IBM entwickelt. Er erfüllt ähnliche Aufgaben wie der ASCII-Code, verfügt jedoch über deutlich mehr Steuerzeichen für die Steuerung innerhalb von Rechnersystemen NUL DEL DS SP SOH DC SOS / a j A J STX DC2 FS SYN b k s B K S ETX TM c l t C L T PF RES BYP PN d m u D M U HT NL LF RS e n v E N V LC BS ETB UC f o w F O W 6 0 DEL IL ESC EOT g p x G P X CAN h q y H Q Y RLF EM i r z I R Z SMM CC SM! : 0 VT CU CU2 CU3. $, # 0 0 FF IFS DC4 < % 0 CR IGS ENQ NAK ( ) - ' 0 SO IRS ACK + ; > = SI IUS BEL SUB /? " Tabelle 3.5: EBCDI-Code (Extended Binary Coded Decimal Interchange Code). Der IBM-Zeichensatz des PC's basiert auf dem ASCII-Code, verfügt allerdings über zahlreiche Erweiterungen sowohl zur Darstellung national relevanter Symbole als auch zur Erstellung einfacher Grafiken bestehend aus verschiedenen Linien. Diese Blockgrafik ist als Vorstufe zur heute verbreiteten Fenstertechnik (Windows) zu sehen. Ihr Vorteil liegt dabei in der einfachen Erstellung und kompakten Speicherung anwendungsbezogener Tabellen oder Fenster.

26 3 Codierung von Nachrichten Seite Redundante Codes 3.6. Grundbegriffe Bei der Übertragung von Informationen über einen Kanal können diese verfälscht werden (s.o.). Die Redundanz kann genutzt werden, um Codeworte gegen Verfälschungen bei der Übertragung oder Speicherung zu sichern. Die Redundanz sollte dabei so klein wie möglich, aber auch so groß wie nötig gehalten werden, um die Anforderungen an den Code sicherzustellen. Hierbei wird zwischen der Fehlererkennung und der Fehlerkorrektur unterschieden. Redundanz: Bezeichnet M die Anzahl der in einem Code dargestellten Zeichen (Elemente der Ausgangsmenge ) und N die maximal mögliche Anzahl von Codewörtern (alle Elemente der Zielmenge), so berechnet sich die Redundanz R des Codes wie folgt: R = ld N - ld M mit [R] = bit N = 2 n ; n = Stellenanzahl der Codeworte (Codewortlänge) R = n - ld(m) bit oder auch Ausgangsalphabet genannt

27 3 Codierung von Nachrichten Seite 27 Beispiel: Ausgangsm enge (M Symbole) Zielmenge (N Codewörter) <unbenutzt> grün 0 0 gelb 0 0 <unbenutzt> 0 rot 0 0 <unbenutzt> 0 rotgelb 0 <unbenutzt> Für obiges Beispiel gilt: R = (ld N - ld M) bit R = (ld 8 - ld 4) bit R = (3-2) bit Die Redundanz des Beispielcodes beträgt also bit. Entropie: Die oben aufgeführt Formel für die Redundanz gilt allerdings nur, wenn alle Codeworte mit der gleichen Wahrscheinlichkeit auftreten. Nun treten Codewörter nicht immer mit der gleichen Wahrscheinlichkeit auf, d.h. der Sender emittiert bestimmte Codewörter häufiger als andere. Damit weisen die Codewörter auch eine unterschiedlichen Informationsgehalt H i auf. Ein Codewort trägt um so mehr Information, je seltener es emittiert wird, der Informationsgehalt H i eines Codewortes z i steigt also mit abnehmender Auftrittswahrscheinlichkeit p(z i ) des Codewortes.

28 3 Codierung von Nachrichten Seite 28 H i = ld p(z i bit ) = ld p ( ( z ))bit i Der durchschnittliche Informationsgehalt pro Codewort ergibt sich zu: H = N i= p(z ) H i i = N i= p(z ) ld i p(z i bit ) Er wird auch als Entropie der Quelle bezeichnet. Die maximale Entropie ergibt sich, wenn die Codewörter z i mit der gleichen Wahrscheinlichkeit auftreten, also mit /N: N N Hmax = ld bit = ld N = N N N i= N ( ) bit = ld( N) N bit = ld( N) bit n bit i= mit der Stellenzahl N = 2 n. Der Informationsgehalt H i eines Codewortes z i entspricht i.d.r. nicht seiner tatsächlichen Wortlänge L i (in bit). 2 Dadurch ergibt sich auch eine von H verschiedene mittlere Wortlänge L des gegebenen Codes: L = N i= p (z ) L i i i Aus der Differenz von L und H ergibt sich die Redundanz R zu: R = L H Die relative Redundanz r wird definiert als: R r = H 2 Dies liegt nicht allein an der Tatsache, dass H i meist keiner ganz-rationalen Zahl entspricht, sondern auch daran, dass den Codeworten beispielsweise zur Fehlererkennung weitere Stellen angefügt werden.

29 3 Codierung von Nachrichten Seite 29 Beispiel: Geben sei folgender Code mit den Worten Z = {auto, baum, circus, dach, ente, flasche, gipfel, hut} mit den zugehörigen Auftrittswahrscheinlichkeiten: p auto = , p baum = , p circus = 0, p dach = , p ente = 0.5, p flasche = 0.25, p gipfel = 0.25, p hut = Die Entropie H berechnet sich zu: N ( zi) Hi = p( zi) H = p i= = 4 0,0625 ld = ( zi) [ 0,25 ld( 6) + 0,5 ld( 2) + 0,25 ld( 8) ] = 2,25bit N i= 0,0625 ld p bit ,5 ld bit 0, ,25 ld 0,25 bit Wenn zur Zeichendarstellung genau 3 bit benutzt werden, folgt die Redundanz R = L H mit L N = p i= = ( z ) [( 4 0, , ,25) 3] = 3bit i Li bit bit und H = 2,25 bit (s.o.) zu: R = L H = 3 bit 2,25 bit = 0,75 bit Die relative Redundanz r ergibt sich zu: R 0,75bit r = = = 0,25 = H 2,25bit 25%

30 3 Codierung von Nachrichten Seite Fehlererkennende Codes Die im folgenden betrachteten Verfälschungen sind gleichbedeutend mit Fehlern in den einzelnen Binärstellen der übertragenen bzw. gesicherten Codeworte. Ändert nur eine Binärstelle des betrachteten Codewortes seinen Signalwert (also statt einer eine 0 oder umgekehrt), so liegt ein Einzelfehler vor. Sind zwei Binärstellen verfälscht, so entspricht dies einem Doppelfehler bzw. einer Fehleranzahl von zwei usw. Um eine einfache Fehlererkennung zu gewährleisten, muss dem Codewort mindestens ein zusätzliches Bit hinzugefügt werden. Durch Hinzufügen eines solchen Parity-Bits lässt sich jeder Code zu einem fehlererkennenden Code ergänzen. Hierbei gibt es zwei verschiedene Verfahrensweisen:. Gerade Ergänzung Parity-Bit (even parity) :=, falls #Einsen = ungerade ; 0, falls #Einsen = gerade 2. Ungerade Ergänzung Parity-Bit (odd parity) :=, falls #Einsen = gerade ; 0, falls #Einsen = ungerade Der Empfänger bildet die Quersumme jedes empfangenen Codewortes. Wurde das Codewort fehlerfrei übermittelt, so ergibt sich bei der Verwendung einer geraden Ergänzung die Quersumme 0 (modulo 2).

31 3 Codierung von Nachrichten Seite 3 Beispiel: Gewicht Ungerades Gerades Dualcode Parity-Bit Parity-Bit Gewicht Bei diesem Code gibt es 6 zulässige Codeworte (Nutzworte) bei 32 möglichen Codeworten und damit auch 6 ungenutzten Codeworte, die auf einen Fehler hindeuten, so genannte Pseudoworte. Allgemein gilt bei einem k-stelligen Code, der durch ein Parity-Bit auf die Wortlänge n = k+ ergänzt wurde, dass die Anzahl der Symbole M = 2 k = 2 n- beträgt. Bei diesem Code werden alle Einzelfehler, kein Doppelfehler, alle Dreifachfehler, allgemein alle ungeradzahligen Fehler, aber keine geradzahligen Fehler erkannt.

32 3 Codierung von Nachrichten Seite 32 Ein weiterer fehlererkennender Code, der auf der Überprüfung einer geraden Anzahl en fundiert, ist der 2-aus-5-Code. Bei diesem Anordnungscode 3 bedeutet "2 aus 5", dass der Code 5 Binärstellen aufweist, wobei in jedem Codewort jeweils nur 2 Binärstellen den Wert haben. Eine analoge Bedeutung kommt dem -aus-0-code zu, wie die nachfolgende Tabelle zeigt. Ziffern 5 Code Ziffern Code Die Redundanz R ergibt sich (unter der Annahme, dass alle Codewörter mit der gleichen Wahrscheinlichkeit auftreten) zu: R = ( ) Bit =.678 Bit R = ( ) Bit = Bit Allgemein bezeichnet ein n-aus-m-code einen m-stelligen Code, in dem jedes Codewort genau n en beinhaltet. m Die verkürzte Schreibweise lautet: n 3 Den einzeln Binärstellen ist - abgesehen von Ausnahmen - kein bestimmter Stellenwert zuzuordnen.

33 3 Codierung von Nachrichten Seite Fehlerkorrigierende Codes Beim Entwurf fehlererkennender und fehlerkorrigierender Codes wird davon ausgegangen, dass bei einem voll ausgenutzten Code eine Verfälschung in einem Nutzwort ein neues Nutzwort erzeugt. Daher müssen zusätzliche Codeworte eingefügt werden. In einem Code der sowohl Nutzworte als auch Pseudoworte enthält, unterscheiden sich die Nutzworte voneinander in einer bestimmten Anzahl von Binärstellen (Stellendistanz d) 4. Beispiel: Z = 0 Z 2 = d(z, Z 2 ) = 2 Definition 3-4: Hammingdistanz Die kleinste Stellendistanz d min aller Nutzworte eines Codes wird Hammingdistanz h genannt. Sie ist ein Maß für die Fehlersicherheit eines Codes. 4 Die Pseudoworte unterscheiden sich zwar auch in einer bestimmten Anzahl von Binärstellen, aber diese Stellendistanz ist für die weiteren Betrachtung nicht relevant.

34 3 Codierung von Nachrichten Seite 34 Der Begriff der Hammingdistanz kann durch die nachfolgende Abbildung verdeutlicht werden: Coderaum eines 3-stelligen Codes; Codeworte, die sich nur in einer Stelle unterscheiden, sind direkt mit einer Linie verbunden; Die Stellendistanz zwischen zwei beliebigen Nutzworten entspricht im allgemeinem der Anzahl Kanten von dem einem zu dem anderen Nutzwort: 000 => 0, 0 u. 0 : Stellendistanz = => : Stellendistanz = 3 Seien 000, 0, 0, 0 gültige Codeworte => Hammingdistanz h = 2 (d.h. zwischen zwei gültigen Codeworten liegt mindestens ein ungültiges);

35 3 Codierung von Nachrichten Seite 35 h= h=2 h=3 Nutzwort Pseudowort Hammingdistanz h = (alle Codeworte werden genutzt) => Eine Fehlererkennung ist nicht möglich. Hammingdistanz h=2 => Eine Fehlererkennung ist möglich (Einzelfehler-Pseudowort). Hammingdistanz h=3 => Eine Fehlererkennung ist möglich (Einzelfehler und Doppelfehler). Allgemein gilt für die Anzahl der mit Sicherheit erkennbaren Fehlern: = h F e Anmerkung: Es gibt auch Codes, bei denen d nicht durchweg gleich ist. Bei ihnen gibt es also Nutzworte, die sich von einem benachbarten Nutzwort in mehr Stellen unterscheiden als von anderen. Deshalb ist die Differenzierung zwischen d und h im allgemeinen Fall notwendig.

36 3 Codierung von Nachrichten Seite 36 Die Korrektur eines Codes wird nur dann möglich, wenn das fehlerhafte Codewort eindeutig einem gültigem Nutzwort (NW) des Coderaumes zugeordnet werden kann. Der Korrekturraum und Korrekturradius zwischen zwei Nutzworten wird in nachfolgenden Abbildung beispielhaft für eine Hammingdistanz von h = 4 gezeigt. 3 Fehleranzahl 2 NW NW2 Einzelfehler, d.h. an genau einer Stelle wurde das Codewort verfälscht => Richtige Korrektur zum nächsten Nutzwort möglich. Doppelfehler => Eindeutiges Erkennen, aber keine Korrektur, keine eindeutige Zuordnung zum richtigen Codewort möglich (verfälschtes Codewort liegt auf der Schnittlinie beider Korrekturräume). Dreifachfehler => Korrektur würde zu einem falschen Codewort führen (verfälschte Codewort liegt nicht mehr im Korrekturraum des zugehörigen Nutzwortes).

37 3 Codierung von Nachrichten Seite 37 => Der zum Korrekturraum gehörende Korrekturradius r k stets h kleiner als die halbe Hammingdistanz h: r k < 2 Die Anzahl korrigierbarer Fehler errechnet sich ganz allgemein wie folgt: F k h bei = 2 h bei 2 ungeradem geradem h h Aus dem Vergleich von F e und F k folgt, dass bei einem Code mindestens doppelt so viele Fehler erkannt wie korrigiert werden können. Es gilt: F e 2 F k Bedeutung der minimalen Hammingdistanz d min eines Codes: d min = : d min = 2: d min = 3: d min = 4: d min = 5: Eindeutigkeit Einzelfehlererkennung Doppelfehlererkennung / Einzelfehlerkorrektur Dreifachfehlererkennung / Einzelfehlerkorrektur Vierfachfehlererkennung / Doppelfehlerkorrektur

38 3 Codierung von Nachrichten Seite Codeumsetzer Bisher wurden einige Codes zur Verschlüsselung vorgegebener Informationen wie beispielsweise Buchstabenfolgen oder Dezimalzahlen dargelegt. In diesem Kapitels soll abschließend noch die Überführung bereits codierter Informationen in einen anderen Code betrachtet werden. Dies geschieht mittels eines Codeumsetzers, der die binärcodierten Informationen eines Codes in einen anderen Code 2 umsetzt. Beispiel: Umsetzung des BCD-Codes in den 7-Segment-Code Code : BCD, Binärcode, rechnerinterner Verarbeitungscode Code 2: 7-Segment-Code, hardwarebezogener "Ansteuerungscode" für bestimmte Datensichtgeräte Der 7-Segment-Code wurde zur Ansteuerung von sieben Segmenten (z.b. mechanische Klappen oder LEDs) entwickelt, die auf Grund ihrer Anordnung die Darstellung der zehn Ziffern sowie einiger Buchstaben erlauben. Aus der Codegegenüberstellung (vgl. Tab) können nun die Vorschriften zur Umsetzung des BCD-Codes in den 7-Segment- Code abgeleitet werden. In diesem Beispiel soll eine LED der 7- Segment-Anzeige aufleuchten, wenn sie mit einer logischen 0 angesteuert wird. Die folgende Abbildung zeigt die Anordnung der Segmente S - S7. S S3 S2 S4 S6 S5 S7

39 3 Codierung von Nachrichten Seite 39 Dezimalziffer 7-Segment-Code BCD-Code S S2 S3 S4 S5 S6 S7 X 3 X 2 X X Implementierung mittels Hardware: Schritt : Festlegen der Richtung, hier ist nur die Umsetzung des BCD-Codes in den 7-Segment-Code sinnvoll; Schritt 2: Aufstellen der Funktionsterme für jedes der 7 Segmente mittels einer Funktionsgleichung oder eines KV-Diagrammes => S = f(x 3, X 2, X, X 0 ) S2 = f(x 3, X 2, X, X 0 )... S7 = f(x 3, X 2, X, X 0 ) Schritt 3: Vereinfachung der Funktionsterme: Entweder jeder für sich alleine betrachtet oder unter Berücksichtigung gemeinsamer Ausdrücke (Funktionsbündel 5 ); Schritt 4: Fertigung der Schaltung; 5 Dies ergibt ggf. Vorteile für die spätere hardwaremäßige Realisierung.

40 3 Codierung von Nachrichten Seite 40 Das Prinzip der Implementierung mittels Hardware verdeutlicht die folgende Abbildung. input: X 3 a Xb 2 Xc dx 0 S S3 S2 Decoder S4 S6 S5 S7

Grundlagen der Technischen Informatik

Grundlagen der Technischen Informatik Boolesche Algebra und Schaltalgebra Grundlagen der technischen Informatik Kapitel 2 Codierung Pascal A. Klein, M.Sc. 2. Codierung... 3 2. Einführung in die Codierung... 3 2.2 Zahlencodes... 4 2.2. BCD-Code

Mehr

Einführung in die Informatik

Einführung in die Informatik Einführung in die Informatik Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de http://www.miwilhelm.de Raum 2.202 Tel. 03943 / 659 338 FB

Mehr

Informatikgrundlagen I Grundlagen der Informatik I

Informatikgrundlagen I Grundlagen der Informatik I Informatikgrundlagen I Grundlagen der Informatik I Dipl.-Inf. Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 Fachbereich Automatisierung

Mehr

Grundlagen der Technischen Informatik. Codierung und Fehlerkorrektur. Kapitel 4.2. Codewörter. Codewörter. Strukturierte Codes

Grundlagen der Technischen Informatik. Codierung und Fehlerkorrektur. Kapitel 4.2. Codewörter. Codewörter. Strukturierte Codes Codewörter Grundlagen der Technischen Informatik Codierung und Fehlerkorrektur Kapitel 4.2 Allgemein: Code ist Vorschrift für eindeutige Zuordnung (Codierung) Die Zuordnung muss nicht umkehrbar eindeutig

Mehr

Escape-Sequenzen. Dr. Norbert Spangler

Escape-Sequenzen. Dr. Norbert Spangler Escape-Sequenzen Einzelzeichen Bedeutung ASCII- ASCII-Code \a alert BEL 07 \b backspace BS 08 \t horizontal tab HT 09 \n line feed LF 0A \v vertical tab VT 0B \f form feed FF 0C \r carriage return CR 0D

Mehr

Grundlagen der Technischen Informatik. 2. Übung

Grundlagen der Technischen Informatik. 2. Übung Grundlagen der Technischen Informatik 2. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 2. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Aufgabe 3: Aufgabe 4: Hamming-Distanz Fehlererkennung

Mehr

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 11

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf  Seite 1 von 11 Kapitel 11 Zeichenverarbeitung Seite 1 von 11 Zeichenverarbeitung - Jedem Zeichen ist ein Zahlencode zugeordnet. - Dadurch wird ermöglicht, zwischen verschiedenen Systemen Texte auszutauschen. - Es werden

Mehr

Zahlensysteme und Kodes. Prof. Metzler

Zahlensysteme und Kodes. Prof. Metzler Zahlensysteme und Kodes 1 Zahlensysteme und Kodes Alle üblichen Zahlensysteme sind sogenannte Stellenwert-Systeme, bei denen jede Stelle innerhalb einer Zahl ein besonderer Vervielfachungsfaktor in Form

Mehr

(Prüfungs-)Aufgaben zur Codierungstheorie

(Prüfungs-)Aufgaben zur Codierungstheorie (Prüfungs-)Aufgaben zur Codierungstheorie 1) Gegeben sei die folgende CCITT2-Codierung der Dezimalziffern: Dezimal CCITT2 0 0 1 1 0 1 1 1 1 1 0 1 2 1 1 0 0 1 3 1 0 0 0 0 4 0 1 0 1 0 5 0 0 0 0 1 6 1 0 1

Mehr

Skript. EDV Grundlagen

Skript. EDV Grundlagen PAUL-EHRLICH-SCHULE Frankfurt-Höchst Berufs-, Fach-, Fachoberschule Informatik FOS FS Skript EDV Grundlagen Datum: Name: Klasse: 1. Daten die Welt der Bits und Bytes Daten begegnen uns im Alltag in vielfältiger

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 20 Einstieg in die Informatik mit Java Literalkonstanten Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 20 1 Ganzzahlige Konstanten 2 Gleitkommakonstanten 3 Zeichenkonstanten

Mehr

Protokollgrundlagen (Schicht 2)

Protokollgrundlagen (Schicht 2) Protokollgrundlagen (Schicht ) Einfaches Kommunikationsprotokoll für eine Punkt-zu-Punkt- Verbindung: Phase Station Station Eröffnung ENQ Fehlerroutine Invalid or no NAK ACK reply Nachrichtenübermittlung

Mehr

Merke: Mit jedem zusätzlichen Bit verdoppelt sich die Anzahl der darstellbaren Zahlen bzw. Zustände

Merke: Mit jedem zusätzlichen Bit verdoppelt sich die Anzahl der darstellbaren Zahlen bzw. Zustände 1 2 Merke: Mit jedem zusätzlichen Bit verdoppelt sich die Anzahl der darstellbaren Zahlen bzw. Zustände 3 Die Zuordnung der Himmelsrichtungen zu den dreistelligen Binärzahlen, also Norden 000 Süden 001

Mehr

2 Darstellung von Zahlen und Zeichen

2 Darstellung von Zahlen und Zeichen 2.1 Bits, Byte, Datenworte und Logikpegel 89 2 Darstellung von Zahlen und Zeichen Computer- bzw. Prozessorsysteme führen Transformationen durch, die Eingaben X auf Ausgaben Y abbilden, d.h. Y = f (X ).

Mehr

Thema 1 -- Fortsetzung. Computersystem, Informationsdarstellung

Thema 1 -- Fortsetzung. Computersystem, Informationsdarstellung Thema 1 -- Fortsetzung Computersystem, Informationsdarstellung Codierung! Bei der Codierung erfolgt eine eindeutige Zuordnung der Zeichen eines Zeichenvorrates (Urmenge, Quellalphabet) zu denjenigen eines

Mehr

Codierungstheorie Teil 1: Fehlererkennung und -behebung

Codierungstheorie Teil 1: Fehlererkennung und -behebung Codierungstheorie Teil 1: Fehlererkennung und -behebung von Manuel Sprock 1 Einleitung Eine Codierung ist eine injektive Abbildung von Wortmengen aus einem Alphabet A in über einem Alphabet B. Jedem Wort

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 18.4.07, Literalkonstanten Übersicht 1 Ganzzahlige Konstanten 2 Gleitkommakonstanten 3 Zeichenkonstanten 4 Zeichenketten 5 Boolsche Konstanten 6 null Referenz Literalkonstanten Literalkonstanten

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 30 Einstieg in die Informatik mit Java Datentypen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 30 1 Überblick 2 Ganzzahlige Typen 3 Gleitkommatypen 4 Zeichen, char

Mehr

Rechnergrundlagen SS Vorlesung

Rechnergrundlagen SS Vorlesung Rechnergrundlagen SS 27 4. Vorlesung Inhalt Binäre Darstellung von Integer-Zahlen Vorzeichen-Betrag 2er-Komplement BCD Addition und Subtraktion binär dargestellter Zahlen Carry und Overflow Little Endian

Mehr

Clevere Algorithmen programmieren

Clevere Algorithmen programmieren ClevAlg 2017 Cäsar-Verschlüsselung Clevere Algorithmen programmieren Dennis Komm, Jakub Závodný, Tobias Kohn 18. Oktober 2017 Clevere Algorithmen programmieren ClevAlg 2017.5 D. Komm, J. Závodný, T. Kohn

Mehr

Digitaltechnik Grundlagen 3. Codes

Digitaltechnik Grundlagen 3. Codes 3. Codes Prof. Dr.-Ing. Thorsten Uelzen Prof. Dr.-Ing. Thorsten Uelzen Version 1.0 von 02/2018 Grundlagen von Codierungen - Hat nicht unbedingt nur mit Spionage etc. zu tun - Allgemeine Definition [nach

Mehr

Technische Informatik - Eine Einführung

Technische Informatik - Eine Einführung Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik Lehrstuhl für Technische Informatik Prof. P. Molitor Technische Informatik - Eine Einführung Darstellung von Zeichen und

Mehr

Grundlagen der Technischen Informatik. Codierung und Fehlerkorrektur. Kapitel 4.2

Grundlagen der Technischen Informatik. Codierung und Fehlerkorrektur. Kapitel 4.2 Codierung und Fehlerkorrektur Kapitel 4.2 Prof. Dr.-Ing. Jürgen Teich Lehrstuhl für Hardware-Software-Co-Design Technische Informatik - Meilensteine Informationstheorie Claude Elwood Shannon (geb. 1916)

Mehr

Grundlagen der Technischen Informatik. Hamming-Codes. Kapitel 4.3

Grundlagen der Technischen Informatik. Hamming-Codes. Kapitel 4.3 Hamming-Codes Kapitel 4.3 Prof. Dr.-Ing. Jürgen Teich Lehrstuhl für Hardware-Software-Co-Design Inhalt Welche Eigenschaften müssen Codes haben, um Mehrfachfehler erkennen und sogar korrigieren zu können?

Mehr

Rechnergrundlagen SS Vorlesung

Rechnergrundlagen SS Vorlesung Rechnergrundlagen SS 27 5. Vorlesung Inhalt Interpretation hexadezimal dargestellter Integer-Zahlen Little Endian / Big Endian Umrechnung in eine binäre Darstellung Ausführung von Additionen Optimierte

Mehr

Kapitel 2: Darstellung von Information. Inhalt. Einfache Datentypen (Fortsetzung) Erste Programme (mit Ausgabe) Exkurs: Grammatiken

Kapitel 2: Darstellung von Information. Inhalt. Einfache Datentypen (Fortsetzung) Erste Programme (mit Ausgabe) Exkurs: Grammatiken Kapitel 2: Wintersemester 2005/06 Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Inhalt Einfache Datentypen (Fortsetzung) Erste

Mehr

Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung)

Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) Wintersemester 2005/06 Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl

Mehr

Grundlagen der Technischen Informatik. 2. Übung

Grundlagen der Technischen Informatik. 2. Übung Grundlagen der Technischen Informatik 2. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit Organisatorisches Übungsblätter zuhause vorbereiten! In der Übung an der Tafel vorrechnen! Bei

Mehr

Rechnernetze Übung 5. Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai Wo sind wir?

Rechnernetze Übung 5. Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai Wo sind wir? Rechnernetze Übung 5 Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai 2012 Wo sind wir? Quelle Nachricht Senke Sender Signal Übertragungsmedium Empfänger Quelle Nachricht Senke Primäres

Mehr

Übung zur Wirtschaftsinformatik I. Zahlensysteme / Codierung

Übung zur Wirtschaftsinformatik I. Zahlensysteme / Codierung WS 06/07 Thema 4: Zahlensysteme / Codierung 1 Übung zur Winfo I - Themenplan - Informationsverarbeitung in Unternehmen Tabellenkalkulation Anwendungen PC-Komponenten Zahlensysteme / Codierung Boole sche

Mehr

Grundlagen Digitaler Systeme (GDS)

Grundlagen Digitaler Systeme (GDS) Grundlagen Digitaler Systeme (GDS) Prof. Dr. Sven-Hendrik Voß Sommersemester 2015 Technische Informatik (Bachelor), Semester 1 Termin 10, Donnerstag, 18.06.2015 Seite 2 Binär-Codes Grundlagen digitaler

Mehr

Wie werden die Barcode Prüfziffern berechnet?

Wie werden die Barcode Prüfziffern berechnet? KB Consult; K. Bögli Bergwiesenstrasse 3 CH88 Weisslingen Telefon: [] 05 / 38 6 96 Fax: [] 05 / 38 5 0 EMail: kurt.boegli@kbconsult.ch Wie werden die Barcode Prüfziffern berechnet? Nachfolgend die Beschreibung

Mehr

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

Rechnerstrukturen. Michael Engel und Peter Marwedel. Sommer TU Dortmund, Fakultät für Informatik Rechnerstrukturen Michael Engel und Peter Marwedel TU Dortmund, Fakultät für Informatik Sommer 2014 Folien a. d. Basis von Materialien von Gernot Fink und Thomas Jansen 10. April 2014 1/37 1 Repräsentation

Mehr

Grundlagen der Datenverarbeitung

Grundlagen der Datenverarbeitung Grundlagen der Datenverarbeitung Zeichendarstellung Christian Gürtler MultiAugustinum 9. November 2014 Christian Gürtler (MultiAugustinum) Grundlagen der Datenverarbeitung 9. November 2014 1 / 16 Inhaltsverzeichnis

Mehr

Zahlensysteme und ihre Anwendung

Zahlensysteme und ihre Anwendung ASCII, ANSI und Unicode belegen übereinstimmend die Positionen 48 bis 57 mit den Ziffern '0'... '9'. 48 57 sind hierbei die Kennziffern von Schriftzeichen. Der Wechsel von arithmetischen Schriftzeichen

Mehr

Einführung in die Codierungstheorie

Einführung in die Codierungstheorie Einführung in die Codierungstheorie Monika König 11.12.2007 Inhaltsverzeichnis 1 Einführung und Definitionen 2 2 Fehlererkennende Codes 3 2.1 Paritycheck - Code............................... 3 2.2 Prüfziffersysteme................................

Mehr

Übungsblatt 5 - Musterlösung

Übungsblatt 5 - Musterlösung Universität Mannheim Lehrstuhl für Praktische Informatik IV Prof. Dr. W. Effelsberg Christoph Kuhmünch, Gerald Kühne Praktische Informatik II SS 2000 Übungsblatt 5 - Musterlösung Aufgabe 1: Huffman-Codierung

Mehr

2 Darstellung von Zahlen und Zeichen

2 Darstellung von Zahlen und Zeichen 2.1 Bits, Byte, Datenworte und Logikpegel 89 2 Darstellung von Zahlen und Zeichen Computer- bzw. Prozessorsysteme führen Transformationen durch, die Eingaben X auf Ausgaben Y abbilden, d.h. Y = f (X ).

Mehr

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

Codes (6) Fehlererkennende (EDC) bzw. fehlerkorrigierende Codes (ECC) Codes (6) Fehlererkennende (EDC) bzw. fehlerkorrigierende Codes (ECC) Definitionen: Codewort:= mit zusätzlichen (redundanten) Kontrollbits versehenes Quellwort m:= Länge des Quellwortes (Anzahl der Nutzdatenbits)

Mehr

Wie werden die Barcode Prüfziffern berechnet?

Wie werden die Barcode Prüfziffern berechnet? KB Consult; K. Bögli Bergwiesenstrasse 23 CH-8484 Weisslingen Telefon: [41] 052 / 384 16 96 Fax: [41] 052 / 384 25 20 E-Mail: kurt.boegli@kbconsult.ch Wie werden die Barcode Prüfziffern berechnet? Nachfolgend

Mehr

2 Darstellung von Zahlen und Zeichen

2 Darstellung von Zahlen und Zeichen 21 Bits Byte Datenworte und Logikpegel 89 2 Darstellung von Zahlen und Zeichen Computer bzw Prozessorsysteme führen Transformationen durch die Eingaben X auf Ausgaben Y abbilden dh Y = f (X ) Eingabe X

Mehr

Zahlen und Zeichen (1)

Zahlen und Zeichen (1) Zahlen und Zeichen () Fragen: Wie werden Zahlen repräsentiert und konvertiert? Wie werden negative Zahlen und Brüche repräsentiert? Wie werden die Grundrechenarten ausgeführt? Was ist, wenn das Ergebnis

Mehr

Technische Fachhochschule Berlin Fachbereich VIII

Technische Fachhochschule Berlin Fachbereich VIII Technische Fachhochschule Berlin Fachbereich VIII Ergänzungen Seite von LOGIKPEGEL Logik-Familien sind elektronische Schaltkreise, die binäre Zustände verarbeiten und als logische Verknüpfungen aufgebaut

Mehr

GETE DIGITAL TECHNIK CODIERUNG BCD: BINARY CODED DIGITAL. Hr. Houska

GETE DIGITAL TECHNIK CODIERUNG BCD: BINARY CODED DIGITAL. Hr. Houska GETE DIGITAL TECHNIK Hr. Houska CODIERUNG Codes werden dazu verwendet, um Zahlen, Buchstaben und Zeichen in ander Darstellungsformen zu verwenden. So repräsentieren unterschiedliche Codes die verschiedenen

Mehr

@ A Q R ( ) Die Bedeutung der Steuerzeichen wird auf der Seite H2 (Tafel 2) erklärt. 6E 6F TAFELN, TABELLEN TAFEL 1. Schriftzeichen.

@ A Q R ( ) Die Bedeutung der Steuerzeichen wird auf der Seite H2 (Tafel 2) erklärt. 6E 6F TAFELN, TABELLEN TAFEL 1. Schriftzeichen. TAFELN, TABELLEN TAFEL 1 7-Bit-Code ASCII Steuerzeichen Zeichen Sedez. NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US 00 01 02 03 04

Mehr

Einführung in die Programmierung Wintersemester 2008/09

Einführung in die Programmierung Wintersemester 2008/09 Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund : Darstellung von Information Inhalt Einfache Datentypen

Mehr

Trellis Diagramme und Viterbi-Decoder

Trellis Diagramme und Viterbi-Decoder Trellis Diagramme und Viterbi-Decoder Michael Dienert. März Fehlertolerante Datenübertragung bei Gigabit-Ethernet Um MBit/s auf Kat Kupferkabeln übertragen zu können, sind eine Reihe technischer Kunstgriffe

Mehr

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

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 Polyadisches Zahlensystem B: Basis des Zahlensystems 0 a i < B a i є N 0 B є (N > 1) Ganze Zahlen: n-1 Z= a i B i i=0 Z = a 0 B 0 + a 1 B 1 + a 2 B 2 +... + a n-1 B n-1 Rationale Zahlen: n-1 Z= a i B i

Mehr

Kapitel 5: Darstellung von Daten im Rechner

Kapitel 5: Darstellung von Daten im Rechner Kapitel 5: Darstellung von Daten im Rechner Kapitel 5 Darstellung von Daten im Rechner und Rechnerarithmetik Literatur: Oberschelp/Vossen, Kapitel 5 Kapitel 5: Darstellung von Daten im Rechner Seite Kapitel

Mehr

Fehlererkennende und fehlerkorrigierende Codes

Fehlererkennende und fehlerkorrigierende Codes Fehlererkennende und fehlerkorrigierende Codes Claudiu-Vlad URSACHE, 5AHITN Inhalt 1. Codes... 2 2. Hammingdistanz... 3 3. Fehlererkennende Codes... 4 4. Fehlerkorrigierende Codes... 5 1. Codes a 2 a 00

Mehr

Programmieren in C Einführung

Programmieren in C Einführung Programmieren in C Einführung Aufbau eines Programms Einfache Programme Datentypen und Vereinbarungen Das Entwicklungswerkzeug Seite Einfache Programme Kugeltank-Berechnung #include void main

Mehr

Praktikum Digitaltechnik

Praktikum Digitaltechnik dig A) Vorbereitungsaufgaben: 1) Ermitteln Sie anhand der gegebenen zwei Blockschaltbilder die Schaltgleichungen und vereinfachen Sie weitmöglich! y 1 =(/(/(x 0 x 1 )/(x 0 +x 1 )))+(/(/(x 0 x 1 )+/(x 0

Mehr

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

Übungen zur Vorlesung Grundlagen der Rechnernetze. Zusätzliche Übungen Übungen zur Vorlesung Grundlagen der Rechnernetze Zusätzliche Übungen Hamming-Abstand d Der Hamming-Abstand d zwischen zwei Codewörtern c1 und c2 ist die Anzahl der Bits, in denen sich die beiden Codewörter

Mehr

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

Lösungsvorschlag 3. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag 3. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Aufgabe 3.1: Codierungen a) Vervollständigen Sie folge Tabelle,

Mehr

Modul Einführung in die Informationstechnologie. Klausur

Modul Einführung in die Informationstechnologie. Klausur Fakultät für Wirtschaft Studiengang BWL - Handel Modul Einführung in die Informationstechnologie Klausur Semester: 3 Datum: 17.12.2010 Bearbeitungszeit: Max. erreichbare Punktzahl: Umfang der Klausur:

Mehr

Signale und Logik (2)

Signale und Logik (2) Signale und Logik (2) Vereinfachte (Relais-/)Schalterdarstellung: Trennung von Nutz- u. Schaltsignal macht Adressaten anwählbar : Bei zwei möglichen Empfängern genügt ein Schalter, um einen der beiden

Mehr

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

Inhaltsangabe 3.1 Zahlensysteme und Darstellung natürlicher Zahlen Darstellung ganzer Zahlen 3 Zahlendarstellung - Zahlensysteme - b-adische Darstellung natürlicher Zahlen - Komplementbildung - Darstellung ganzer und reeller Zahlen Inhaltsangabe 3.1 Zahlensysteme und Darstellung natürlicher Zahlen......

Mehr

Die Mathematik in der CD

Die Mathematik in der CD Lehrstuhl D für Mathematik RWTH Aachen Lehrstuhl D für Mathematik RWTH Aachen St.-Michael-Gymnasium Monschau 14. 09. 2006 Codes: Definition und Aufgaben Ein Code ist eine künstliche Sprache zum Speichern

Mehr

Computer rechnen nur mit Nullen und Einsen

Computer rechnen nur mit Nullen und Einsen Computer rechnen nur mit Nullen und Einsen Name: Unser bekanntes Dezimalsystem mit 10 Ziffern Ein wesentliches Merkmal eines Zahlensystems ist die verwendete Anzahl der Ziffern. Im Dezimalsystem gibt es

Mehr

1 Dualsystem Dualzahlen mit Vorzeichen 4. 2 Hexadezimalsystem Hexadezimalzahlen mit Vorzeichen Oktalsystem 13 4 Zahlenring 14

1 Dualsystem Dualzahlen mit Vorzeichen 4. 2 Hexadezimalsystem Hexadezimalzahlen mit Vorzeichen Oktalsystem 13 4 Zahlenring 14 Zahlensysteme Inhalt: 1 Dualsystem 1 1.1 Dualzahlen mit Vorzeichen 4 2 Hexadezimalsystem 8 2.1 Hexadezimalzahlen mit Vorzeichen 10 3 Oktalsystem 13 4 Zahlenring 14 Definition: Ein polyadisches Zahlensystem

Mehr

Klausur Informationstheorie und Codierung

Klausur Informationstheorie und Codierung Klausur Informationstheorie und Codierung WS 2013/2014 23.01.2014 Name: Vorname: Matr.Nr: Ich fühle mich gesundheitlich in der Lage, die Klausur zu schreiben Unterschrift: Aufgabe A1 A2 A3 Summe Max. Punkte

Mehr

Optimalcodierung. Thema: Optimalcodierung. Ziele

Optimalcodierung. Thema: Optimalcodierung. Ziele Optimalcodierung Ziele Diese rechnerischen und experimentellen Übungen dienen der Vertiefung der Kenntnisse im Bereich der Optimalcodierung, mit der die Zeichen diskreter Quellen codiert werden können.

Mehr

Spezifikation. für die Erstellung und Übertragung einer Meldedatei zu erstattungsfähigen und gedeckten Einlagen. Version 1.0 BASIS

Spezifikation. für die Erstellung und Übertragung einer Meldedatei zu erstattungsfähigen und gedeckten Einlagen. Version 1.0 BASIS Spezifikation für die Erstellung und Übertragung einer Meldedatei zu erstattungsfähigen und gedeckten Einlagen Version 1.0 BASIS I. Allgemeines 1. Regulatorisches Umfeld Zuletzt erfolgte im Jahr 2009 die

Mehr

Informationsdarstellung im Rechner

Informationsdarstellung im Rechner 1 Informationsdarstellung im Rechner Wintersemester 14/15 1 Informationsdarstellung 2 Was muss dargestellt werden? Zeichen (Buchstaben, Zahlen, Interpunktionszeichen, Steuerzeichen, grafische Symbole,

Mehr

X = {x 1,x 2,...} sei ein Symbolalphabet eines Kodes. In diesem Kode sind card(x) = X Sachverhalte darstellbar

X = {x 1,x 2,...} sei ein Symbolalphabet eines Kodes. In diesem Kode sind card(x) = X Sachverhalte darstellbar 3. Kodierung Wir wollen Kodierung nicht als Verschlüsselung zum Zwecke der Geheimhaltung auffassen, sondern als Mittel zur Darstellung von Sachverhalten so, daß eine Rechner mit diesen Sachverhalten umgehen

Mehr

Kodierung. Kodierung von Zeichen mit dem ASCII-Code

Kodierung. Kodierung von Zeichen mit dem ASCII-Code Kodierung Kodierung von Zeichen mit dem ASCII-Code Weiterführende Aspekte zur Kodierung: Speicherplatzsparende Codes Fehlererkennende und -korrigierende Codes Verschlüsselnde Codes Spezielle Codes, Beispiel

Mehr

Kapitel 13: Syndromcodierung / Hamming Codes

Kapitel 13: Syndromcodierung / Hamming Codes Kapitel 3: Syndromcodierung / Hamming Codes Ziele des Kapitels Lineare Codes Zyklische Codes Copyright M. Gross, ETH Zürich 26, 27 2 Parity-Check-Matrix Theorem: Die Minimaldistanz eines linearen Codes

Mehr

Informationsdarstellung. 2 Informationsdarstellung. Ziele. 2 Informationsdarstellung Texte. Texte WS 2017/2018

Informationsdarstellung. 2 Informationsdarstellung. Ziele. 2 Informationsdarstellung Texte. Texte WS 2017/2018 Fakultät Informatik Institut Systemarchitektur Professur Datenschutz und Datensicherheit WS 2017/2018 2. Informationsdarstellung Dr.-Ing. Elke Franz Elke.Franz@tu-dresden.de 2 Informationsdarstellung Ziele

Mehr

Digitaltechnik Grundlagen 5. Elementare Schaltnetze

Digitaltechnik Grundlagen 5. Elementare Schaltnetze 5. Elementare Schaltnetze Version 1.0 von 02/2018 Elementare Schaltnetze Dieses Kapitel beinhaltet verschiedene Schaltnetze mit speziellen Funktionen. Sie dienen als Anwendungsbeispiele und wichtige Grundlagen

Mehr

Grundlagen der Technischen Informatik. 3. Übung

Grundlagen der Technischen Informatik. 3. Übung Grundlagen der Technischen Informatik 3. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 3. Übungsblatt Themen Aufgabe : Aufgabe 2: Aufgabe 3: Informationstheorie Huffman-Code Entropie

Mehr

Rechnerorganisation 12. Vorlesung

Rechnerorganisation 12. Vorlesung Rechnerorganisation 12. Vorlesung Mathematische Grundlagen (1) Boolesche Algebren: BMA, BAA (2,3) Kombinatorische Schaltungen (4,5) Automaten (6,7) Sequentielle Schaltungen (8) Programmierbare Strukturen

Mehr

Technische Informatik (RO)

Technische Informatik (RO) Technische Informatik (RO) Zahlensysteme, Digitale Systeme (1) Boolesche Algebren: BMA, BAA (2,3) Kombinatorische Schaltungen (4,5) Automaten, Sequentielle Schaltungen (6) Informationskodierung (7,8) Fortsetzung

Mehr

Zahlendarstellungen und Rechnerarithmetik*

Zahlendarstellungen und Rechnerarithmetik* Zahlendarstellungen und Rechnerarithmetik* 1. Darstellung positiver ganzer Zahlen 2. Darstellung negativer ganzer Zahlen 3. Brüche und Festkommazahlen 4. binäre Addition 5. binäre Subtraktion *Die Folien

Mehr

Rechnerorganisation 12. Vorlesung

Rechnerorganisation 12. Vorlesung Rechnerorganisation 12. Vorlesung Mathematische Grundlagen (1) Boolesche Algebren: BMA, BAA (2,3) Kombinatorische Schaltungen (4,5) Automaten (6,7) Sequentielle Schaltungen (8) Programmierbare Strukturen

Mehr

Rechnerorganisation 12. Vorlesung

Rechnerorganisation 12. Vorlesung Rechnerorganisation 12. Vorlesung Mathematische Grundlagen (1) Boolesche Algebren: BMA, BAA (2,3) Kombinatorische Schaltungen (4,5) Automaten (6,7) Sequentielle Schaltungen (8) Programmierbare Strukturen

Mehr

Wie rechnet ein Rechner?

Wie rechnet ein Rechner? 0 Motivation Jörg Roth 2 Wir gehen in dieser Vorlesung der Frage nach Wie rechnet ein Rechner? Als Softwareentwickler könnten wir in einem Programm z.b. folgende Anweisung schreiben: a = a+2*b; Wie wird

Mehr

alphanumerische Zeichen

alphanumerische Zeichen Darstellung von Text 7 Bit pro Zeichen genügen (2 7 = 128) 26 Kleinbuchstaben 26 Großbuchstaben 10 Ziffern alphanumerische Zeichen Sonderzeichen wie '&', '!', ''' nicht druckbare Steuerzeichen, z.b. -

Mehr

Eine Reihe häufig benötigter Datentypen ist in C vordefiniert

Eine Reihe häufig benötigter Datentypen ist in C vordefiniert 2 Standardtypen in C D.3 Datentypen Eine Reihe häuig benötigter Datentypen ist in C vordeiniert char int loat double void Zeichen (im ASCII-Code dargestellt, 8 Bit) ganze Zahl (16 oder 32 Bit) Gleitkommazahl

Mehr

T c) Daten welcher Größenordnung kann ein Register aufnehmen: Byte, kilobytes, megabytes, gigabytes or terabytes?

T c) Daten welcher Größenordnung kann ein Register aufnehmen: Byte, kilobytes, megabytes, gigabytes or terabytes? 222 6 MMIXProzessor Verständnisfragen/Aufgaben Allgemein T a) Was ist ein Register? Kleiner aber Schneller Speicher T b) Wo findet man Register in einem ComputerSystem? Prozessor T c) Daten welcher Größenordnung

Mehr

(Prüfungs-)Aufgaben zu Schaltnetzen

(Prüfungs-)Aufgaben zu Schaltnetzen (Prüfungs-)Aufgaben zu Schaltnetzen 1) Gegeben sei die binäre Funktion f(a,b,c,d) durch folgende Wertetabelle: a b c d f(a,b,c,d) 0 1 0 0 0 0 1 1 1 1 1 1 0 0 1 1 a) Geben Sie die disjunktive Normalform

Mehr

Arbeitsblatt Logische Verknüpfungen Schaltnetzsynthese

Arbeitsblatt Logische Verknüpfungen Schaltnetzsynthese Einleitung Zur Aktivitätsanzeige der 3 Gehäuselüfter (Signale a - c) eines PC-Systems soll eine Logikschaltung entwickelt werden, die über drei Signalleuchten (LEDs) anzeigt, ob ein beliebiger (LED1 x),

Mehr

(7) AB 20: Bits und Bytes

(7) AB 20: Bits und Bytes Wie speichert ein Computer Informationen? - Binärsystem, Bits und Bytes Wusstet Ihr, dass Computer nur Nullen und Einsen verwenden? Alles, was ihr auf einem Computer seht oder hört Wörter, Bilder, Zahlen,

Mehr

Grundlagen der Informationstechnik

Grundlagen der Informationstechnik Grundlagen der Informationstechnik 2 Um die Funktionsweise der Computernetze zu verstehen, ist ein grundlegendes Verständnis der Informationstechnik (IT) nötig. Bei diesen Grundlagen handelt es sich um

Mehr

Notation und Einführung

Notation und Einführung Skriptteil zur Vorlesung: Proinformatik - Funktionale Programmierung Dr. Marco Block-Berlitz 30.Juli 2009 Notation und Einführung Der folgende Abschnitt gibt eine kurze Einführung in die Codierungstheorie.

Mehr

Modul Diskrete Mathematik WiSe 2011/12

Modul Diskrete Mathematik WiSe 2011/12 Modul Diskrete Mathematik WiSe / Ergänzungsskript zum Kapitel 3.4. Hinweis: Dieses Manuskript ist nur verständlich und von Nutzen für Personen, die regelmäßig und aktiv die zugehörige Vorlesung besuchen

Mehr

Advanced Encryption Standard. Copyright Stefan Dahler 20. Februar 2010 Version 2.0

Advanced Encryption Standard. Copyright Stefan Dahler 20. Februar 2010 Version 2.0 Advanced Encryption Standard Copyright Stefan Dahler 20. Februar 2010 Version 2.0 Vorwort Diese Präsentation erläutert den Algorithmus AES auf einfachste Art. Mit Hilfe des Wissenschaftlichen Rechners

Mehr

Grundlagen der Technischen Informatik. 3. Übung

Grundlagen der Technischen Informatik. 3. Übung Grundlagen der Technischen Informatik 3. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 3. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Aufgabe 3: Aufgabe 4: Aufgabe 5: Zahlendarstellungen

Mehr

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

Informationsmenge. Maßeinheit: 1 Bit. 1 Byte. Umrechnungen: Informationsmenge zur Beantwortung einer Binärfrage kleinstmögliche Informationseinheit Informationsmenge Maßeinheit: 1 Bit Informationsmenge zur Beantwortung einer Binärfrage kleinstmögliche Informationseinheit 1 Byte Zusammenfassung von 8 Bit, kleinste Speichereinheit im Computer, liefert

Mehr

2 Von der Relation zur Funktion

2 Von der Relation zur Funktion 2 Von der Relation zur Funktion 2.1 Relationen Gegeben seien zwei Zahlenmengen P = 1, 2, 3, 4 und Q = 5, 6, 7. Setzt man alle Elemente der Menge P in Beziehung zu allen Elementen der Menge Q, nennt man

Mehr

Was ist Wirtschaftsinformatik?

Was ist Wirtschaftsinformatik? 1. Grundlagen, 1.1 Grundverständnis der Wirtschaftsinformatik Was ist Wirtschaftsinformatik? BWL Betriebswirtschaftliche Problemstellung: Wie kann IT im Unternehmen angewendet werden, z.b. im Bereich Beschaffung

Mehr