sükün_karatas3afd1 grundlagen der codes. sükün_karatas3afd2 geschichte der codes julius cäsar...
Post on 06-Apr-2016
216 Views
Preview:
TRANSCRIPT
Sükün_Karatas 3aFD 1
Grundlagen der Codes
Sükün_Karatas 3aFD 2
Geschichte der Codes
• Julius Cäsar• 14. Jh. Verwendung Codes• 19. Jh. Chiffren• Hollerith-Lochkarten• EBCDIC• BCDIC-Code• Public-key-kryptographie
Sükün_Karatas 3aFD 3
ASCII-Aufbau
• Zeichen 0 bis 31 (1Fh):Steuerzeichen, wie z. B. Tabulatoren, Zeilen- und Seitenvorschub • Zeichen 48 (30h) bis 57 (39h): Ziffern 0 bis 9 • Zeichen 65 (41h) bis 90 (5Ah): Großbuchstaben A bis Z• Zeichen 97 (61h) bis 122 (7Ah): Kleinbuchstaben a bis z
• Sonderzeichen fehlen
• Klammer, Dollarzeichen, usw. verteilen in Zwischenräumen
Sükün_Karatas 3aFD 4
ASCII-Aufbau
• IBM erweitert ASCII-Code 8 bit• 128 Zeichen darstellbar• MS-DOS 3.3 ==> Code Pages • Zeichen von 128 bis 255• Problem:
– japanische od. chinesische Zeichen– E-Mails + Umlaute
Sükün_Karatas 3aFD 5
Unicode - Geschichte
• Unicode Consortium• Unicode-Standard 1991• V 1.1_1993• V 2.0_1996• V 3.0_2000
Sükün_Karatas 3aFD 6
Unicode
• Zeichensatz mit allen bekannten Zeichen• Normiert als ISO 10646• Ursprünglich 16-Bit pro Zeichen, jetzt 32-Bit• Unicode 4.0 umfasst 96.382 Zeichen• Schreibweise: hexadezimal mit vorangestelltem „U+“• -y = U+ 0079, ö = U+ 00E4; € = U+ 20 AC• Codierungen: UTF-8; UT 6 -16; UTF -32
Sükün_Karatas 3aFD 7
Unicode - UTF 8
• 8 Bit Unicode Transformation Format• Codierungsvorschrift für Unicode• Ein Zeichen wird mit 1 bis 4 Bytes codiert.• Kann bis zu 70 Mrd. Zeichen codieren• Alle Zeichen des ASCII-Codes werden unverändert
übernommen.• Alle Zeichen über 127 benötigen mehr als ein Byte zur
Codierung
Sükün_Karatas 3aFD 8
Huffman-Code
• meistverwendete Algorithmus• kodiert die Zeichen eines Textes• Huffman – Coding – Trees• Verwendung ==> Grafikverarbeitung• JPEG, MPEG, LHA
Sükün_Karatas 3aFD 9
Huffman-Code - Aufbau
Ausgangssituation des Huffman-Algorithmus
Sükün_Karatas 3aFD 10
Huffman-Code - Aufbau
Sükün_Karatas 3aFD 11
Huffman-Code - Aufbau
Sükün_Karatas 3aFD 12
Huffman-Code - Aufbau
• Nachteile– Umsetzung erfordert umständliche
Bitoperationen– Optimalität der Kompression
Sükün_Karatas 3aFD 13
Hamming - Code
• Richard Hamming• Linearer Fehlerkorrigierender Blockcode• Verwendung in NT und gesicherte
Datenübertragung und Datenspeicherung• Fehlererkennung + Fehlerkorrektur der
übertragenen Datenbits
Sükün_Karatas 3aFD 14
Hamming-Code - Geschichte
• 1940er Jahren• Richard Hamming + Firma Bell Labs• 1950: Hamming Code• Anwendung im Bereich der Kanalcodierung
Sükün_Karatas 3aFD 15
Hamming-Code - Aufbau
n = 2k − k − 1
n… Datenblock umfasst n Bitsk… fixe KontrollstellenN… Codewortlänge
Sükün_Karatas 3aFD 16
Hamming - Code - Aufbau
Sükün_Karatas 3aFD 17
Fehlererkennung & Fehlerkorrektur
• Mögliche Fehlerursachen
– Rauschen
– Kurzzeitstörungen
– Signalverformung
• Fehlererkennung
• Fehlerkorrektur
– Vorwärts
Fehlerkorrektur (FEC)
– Anforderung auf
Wiederholung der
Übertragung
Sükün_Karatas 3aFD 18
Mögliche Fehlerursachen
• Rauschen– Bitfehler– Unabhängig von der Ursache
• Signalverformung– Dämpfung und Phasengang eines Übertragunsgkanal
• Nebensprechen– Kapazitive Kopplung
Sükün_Karatas 3aFD 19
Fehlererkennung
• Parität• ECC• Hashs
Sükün_Karatas 3aFD 20
Fehlererkennung _ Parität
• Paritätsbit
• bietet keinen hohen Schutz
• even oder odd Parity
Man zählt alle 1er ==> 0001 1 ==> 1+1=2 gerade/even
==> 0011 1 ==> 1+1+1=3 ungerade/odd
Daten Even odd
0000 0 1
0001 1 0
1101 1 0
0011 0 1
1111 0 1
Sükün_Karatas 3aFD 21
CRC _ Cyclic Redundancy Check • zyklische Redudanzprüfung• Verfahren aus der IT• Vergleich der Prüfwerte• Festplatten-Übertragungen geprüft• Schreib/Leseoperationen geprüft
Sükün_Karatas 3aFD 22
Hashs
• Komprimierung von Daten• Eingabe: beliebige Länge• Ausgabe: feste Länge• SHA-1• Hash-Wert ==> digitaler Fingerabdruck• Anwendung: Datenbank, herunterladen einer
Datei
Sükün_Karatas 3aFD 23
Quellen
• http://www-fs.informatik.uni-tuebingen.de/lehre/ss05/proseminar/Folien/Codes.pdf
• http://de.wikipedia.org/wiki/ASCII#Geschichte • http://de.wikibooks.org/wiki/
Assembler_(80x86_Prozessor)-Programmierung:_Grundlagen
• http://www.iti.fh-flensburg.de/lang/algorithmen/code.htm• http://de.wikipedia.org/wiki/Cyclic_Redundancy_Check
Sükün_Karatas 3aFD 24
Danke für eure Aufmerksamkeit
top related