Das ZIP-Datenkompressionsverfahren history menue Letztmalig dran rumgefummelt: 22.06.26 01:36:57

Zip & Co - ZIP ist übrigens die Abkürzung für „Zigzag Inline Package", deutsch so etwas wie „zeilenweise im Zickzack gefaltetes (Daten-)Paket". Es wurde 1989 von Phil Katz geschrieben, der es als PKZIP (Phil Katz's Zip) vertrieb. Zip ist so bis heute der meistverbreitete Standard zur verlustfreien Datenkomprimierung. Andere bekannte Komprimierer sind ARJ (nach seinem Erfinder Archiver von Robert Jung" genannt) und RAR (auch nach dem Erfinder "Eugene Roshal Archiver" benannt).
1. Problembeschreibung
2.  Informationsgehalt von Zeichen und Zeichengruppen
3. Häufigkeitsverteilung von Zeichen
4. Bits reduzieren - egal, WIE!!!
5. Präfixe, Fano-Bedingung - +++ START +++ Stop+++
6. Weiterführende Literatur
7. Linkliste zum Thema
8. Verwandte Themen

Probleme & Problemlösungsverfahren

 

Logo für den ZIP-Algorithmus

Wissen für Fortgeschrittene der Informatik

Informatik-Profi-Wissen

Quellen:
ANSI-Code UNICODE
Mit sechsundzwanzig Zeichen lässt sich die ganze Welt beschreiben!Abger es sollen nur so wenig wie mögliche Bits zur Speicherung oder Übertragung eingesetzt werden. Geht das überhaupt???

ASCII-Code-Tabelle

ASCII- bis UNICODE

Sechs Bit tiefe Zeichentabelle - der ASCII sieben und der ANSI-Code hat acht Bit Sechs Bit tiefe Zeichentabelle - Auslesen von Daten    

Sechs Bit Code-Baum

Binärbaum für Sechs-Bit-Code DIYS im CorelDraw 11.0-Format

Sechs Bit Code-Baum - das Vorgehen beim Auslesen

Binärbaum für Sechs-Bit-Code Reader DIYS im CorelDraw 11.0-Format


P mit Bittiefe sechs würde zu: 000101
Jeder Tiefenstrich repräsentiert genau ein Bit mit den Werten "0" oder "1"
Pfeil mit Richtung oben - schreibe 0
Pfeil mit Richtung unten - schreibe 1
 


1. Problembeschreibung history menue scroll up

Bei der Datenkomprimierung werden redundante oder unnötige Informationen in einer Datei reduziert. Dadurch benötigt die Datei weniger Speicherplatz auf der Festplatte und lässt sich im Internet oder über Netzwerke wesentlich schneller übertragen. e
unser vereinfachter ASCII-Codesatz als binärer Baum unser vereinfachter ASCII-Codesatz in ein DELPHI 6.0-Programm gegossen unser vereinfachter ASCII-Codesatz unser vereinfachter ASCII-Codesatz als binärer Baum zum selbst ausdecodieren  

Binärbaum für vereinfachten ASCII-Code

-Binärbaum für vereinfachten ASCII-Code im CorelDraw11.0-Format

Binärbaum für vereinfachten ASCII-Code in Software

Binärbaum für vereinfachten ASCII-Code als startbare EXE-Datei

Binärbaum für vereinfachten ASCII-Code als ZIP-Archiv

Zeichen Code Zeichen Code Zeichen Code Zeichen Code
SPACE 00000 H 01000 P 10000 X 11000
A 00001 I 01001 Q 10001 Y 11001
B 00010 J 01010 R 10010 Z 11010
C 00011 K 01011 S 10011 . 11011
D 00100 L 01100 T 10100 , 11100
E 00101 M 01101 U 10101 : 11101
F 00110 N 01110 V 10110 - 11110
G 00111 O 01111 W 10111 # 11111

Binärbaum für vereinfachten ASCII-Code im DIYS-Format

Binärbaum für vereinfachten ASCII-Code DIYS im CorelDraw 11.0-Format

 

 
AGATGCCGTTACGA wird nun zu: 0000100111000011010000111000110001100111101001010000001000110011100001 also 70 Bit
GTCCAGAATTGATCCACGTTCCCAGTGATTCGTCGATTGCTTACCGTATGCCTGAGTCAGCAGTAGTTCATCCTAGGCCTACTAGCGATCAGGTACAT (99 Eingabezeichen) wird nun zu:
001111010000011000110000100111000010000110100101000011100001101000001100011000010001100111101001010000011000110001100001001111010000111000011010010100
000110011110100000110011100001101001010000111000111010010100000010001100011001111010000001101000011100011000111010000111000010011110100000110000100111
000110000100111101000000100111101001010000011000011010000011000111010000001001110011100011000111010000001000111010000001001110001100111000011010000011
0000100111001111010000001000110000110100 also 490 Bit
Nachfafolgend tasten wir uns an Möglichkeiten aber auch auftretende Probleme heran, welche zum Ziel hben, den zu übertragenden Bitstrom wesentlich zu reduzieren ohne dabei Informationen zu verlieren.
unser reduzierter ASCII-Codesatz als binärer Baum unser vereinfachter ASCII-Codesatz in ein DELPHI 6.0-Programm gegossen unser vereinfachter ASCII-Codesatz Ergebnisanalyse

Binärbaum für reduzierten ASCII-Code

-Binärbaum für reduzierten ASCII-Code im CorelDraw11.0-Format

Binärbaum für reduzierhten ASCII-Code in Software

Binärbaum für vereinfachten ASCII-Code als startbare EXE-Datei

Binärbaum für vereinfachten ASCII-Code als ZIP-Archiv

Zeichen Code
A 00
C 01
G 11
T 11
Vorteil: die Zeichenfolgen ruduzieren sich um jeweils 2 Bit für jedes Zeichen
Nachteil: der Zeichenvorrat ist auf 4 Zeichen beschränkt
AGATGCCGTTACGA (14 Eingabezeichen) werden nun zu: 00 01 00 11 01 01 01 01 11 11 00 01 01 00 also 42 Bit
AGTCCAGAATTGATCCACGTTCCCAGTGATTCGTCGATTGCTTACCGTATGCCTGAGTCAGCAGTAGTTCATCCTAGGCCTACTAGCGATCAGGTACAT (99 Eingabezeichen) werden nun zu: 00 01 11 01 01 00 01 00 00 11 11 01 00 11 01 01 00 01 01 11 11 01 01 01 00 01 11 01 00 11 11 01 01 11 01 01 00 11 11 01 01 11 11 00 01 01 01 11 00 11 01 01 01 11 01 00 01 11 01 00 01 01 00 01 11 00 01 11 11 01 00 11 01 01 11 00 01 01 01 01 11 00 01 11 00 01 01 01 00 11 01 00 01 01 11 00 01 00 11 also 198 Bit


2. Informationsgehalt von Zeichen und Zeichengruppen history menue scroll up

Unter Annahme der Tatsache, dass wir nicht die Kaprekartiefe, sondern die Regelmäßigkeit der Wiederkehr der einzelnen Werte selbiger suchen, fällt die Aufgabe heute typischerweise in den Bereich der nicht entscheidbaren Probleme. Und diese Beschreibung selbst zu finden, dürfte dann schon in die Klasse der komplexen Probleme fallen.
 
Klartext ohne Konsonanten - 145 Zeichen fehlen Klartext ohne Vokale - etwa gleiche Anzahl Zeichen fehlen Klartext  

Klartext ohne Konsonanten

Klartext ohne Vokale

Klartext


Vokale außer auslautend haben also gar keinen Informationsgehalt für die Sprache - sie verbinden nur Konsonantengruppen


3. Häufigkeitsverteilung von Zeichen history menue scroll up
Das Grundprinzip besteht darin, systematisch mit den kleinstmöglichen Werten in den kleinstmöglichen Boxen die Gegenstände abzulegen und anschließend systematisch kleinere Gesamtwerte durch größere volumengleich zu ersetzen, Nachfolgend eine Idee, welche erst einmal nicht schlecht aussieht!
unser vereinfachter ASCII-Codesatz mit Bitgruppen nach Häufigkeitsverteilung - auf den ersten Blick perfekt - aber was sagt der Zweite? unser vereinfachter ASCII-Codesatz unser vereinfachter ASCII-Codesatz als binärer Baum zum selbst ausdecodieren unser vereinfachter ASCII-Codesatz in ein DELPHI 6.0-Programm gegossen
  • SPACE und E mit 3 Bit codieren
  • N, I, S und R mit vier Bit codieren
  • A bis G mit fünf Bit darstellen
  • die verbleibenden Zeichen mit 6 Bit
  • Grundidee: die oft benötigten Zeichen bekommen kürzere Bitgruppen
  • Problem: Erkennen, wann eine Bitgruppe beendet ist und die neue beginnt
SPACE: 000 L 00101 V 001000
E 001 C 00110 J 001001
N 0000 G 00111 Y 001010
I 0001 M 000000 X 001011
S 0010 O 000001 . 001100
R 0011 B 000010 , 001101
A 00000 W 000011 Q 001110
T 00001 F 000100 : 001111
D 00010 K 000101 - 010000
H 00011 Z 000110 # 010001
U 00100 P 000111    
Zeichen Häufigkeit Zeichen Häufigkeit Zeichen Häufigkeit Zeichen Häufigkeit
SPACE 18,50 % D 4,14 % B 1.54 % Y 0.03 %
E 14,17 % H 3,88 % W 1,54 % X 0,02 %
N 7,96 % U 3,54 % F 1,35 % . 0,02 %
I 6,15 % L 2,80 % K 0,99 % , 0,02 %
S 5,92 % C 2,49 % Z 0,92 % Q 0,02 %
R 5,70 % G 2,45 % P 0,64 % : 0,01 %
A 5,30 % M 2,06 % V 0,55 % - 0,01 %
T 5,01 % O 2,04 % J 0,22 % # 0,01 %

Binärbaum für vereinfachten ASCII-Code im DIYS-Format

Binärbaum für vereinfachten ASCII-Code DIYS im CorelDraw 11.0-Format

 

Binärbaum für vereinfachten ASCII-Code in Software

Binärbaum für vereinfachten ASCII-Code als startbare EXE-Datei

Binärbaum für vereinfachten ASCII-Code als ZIP-Archiv

HANS ZOG EIN TUECHLEIN AUS DER TASCHE, WICKELTE DEN KLUMPEN HINEIN, SETZTE IHN AUF DIE SCHULTER UND MACHTE SICH AUF DEN WEG NACH HAUS.


4. Bits reduzieren - egal, WIE!!! history menue scroll up
history menue scroll up

Das Grundprinzip besteht immer noch darin, systematisch die am häufigsten vorkommenden Zeichen durch mäglichst kleine Bitgruppen zu ersetzen, aber diese beim wieder einlesen 100 %ig genau zurück zu erhalten.
unser vereinfachter ASCII-Codesatz mit Bitgruppen nach Häufigkeitsverteilung unser vereinfachter ASCII-Codesatz unser vereinfachter ASCII-Codesatz als binärer Baum zum selbst ausdecodieren unser vereinfachter ASCII-Codesatz in ein DELPHI 6.0-Programm gegossen
  • SPACE und E mit 3 Bit codieren
  • N, I, S und R mit vier Bit codieren
  • A bis G mit fünf Bit darstellen
  • die verbleibenden Zeichen mit 6 Bit
  • Grundidee: die oft benötigten Zeichen bekommen kürzere Bitgruppen
  • Problem: Erkennen, wann eine Bitgruppe beendet ist und die neue beginnt
SPACE: 000 L 00101 V 10000
E 001 C 00110 J 10001
N 0000 G 00111 Y 10010
I 0001 M 01000 X 000000
S 0010 O 01001 . 000001
R 0011 B 01010 , 000010
A 00000 W 01011 Q 000011
T 00001 F 01100 : 000100
D 00010 K 01101 - 000101
H 00011 Z 01110 # 000110
U 00100 P 01111    
Zeichen Häufigkeit Zeichen Häufigkeit Zeichen Häufigkeit Zeichen Häufigkeit
SPACE 18,50 % D 4,14 % B 1.54 % Y 0.03 %
E 14,17 % H 3,88 % W 1,54 % X 0,02 %
N 7,96 % U 3,54 % F 1,35 % . 0,02 %
I 6,15 % L 2,80 % K 0,99 % , 0,02 %
S 5,92 % C 2,49 % Z 0,92 % Q 0,02 %
R 5,70 % G 2,45 % P 0,64 % : 0,01 %
A 5,30 % M 2,06 % V 0,55 % - 0,01 %
T 5,01 % O 2,04 % J 0,22 % # 0,01 %

Binärbaum für vereinfachten ASCII-Code im DIYS-Format

Binärbaum für vereinfachten ASCII-Code DIYS im CorelDraw 11.0-Format

 

Binärbaum für vereinfachten ASCII-Code in Software

Binärbaum für vereinfachten ASCII-Code als startbare EXE-Datei

Binärbaum für vereinfachten ASCII-Code als ZIP-Archiv

HANS ZOG EIN TUECHLEIN AUS DER TASCHE, WICKELTE DEN KLUMPEN HINEIN, SETZTE IHN AUF DIE SCHULTER UND MACHTE SICH AUF DEN WEG NACH HAUS.
 
 


5. Präfixe, Fano-Bedingung - +++ START +++ Stop+++ history menue scroll up

 
 


6. Weiterführende Literatur history menue scroll up

 
         

Datenkompression vom Fachmann

       


7. Links zum Thema history menue scroll up

 
http://www.mathematische-basteleien.de/kaprekarzahl.htm
 


8. Verwandte Themen history menue scroll up

Das Vorangestellte hilft wirtschaften, löst jedoch kein einziges Problem (allerdings ohne Beachtung der Worst-Case-Strategien wird man auch nicht erfolgreich Software entwickeln und/oder informatische Projekte realisieren können). Deshalb nunmehr das, was wirklich Arbeiten hilft.

das 8-Damen-Problem

das Cliquenproblem

das Dominoproblem

das Entscheidbarkeitsproblem

das Erfüllbarkeitsproblem

die Fibonacci-Zahlen

das Wortproblem

das Hamiltonproblem

das K-Farben-Problem

das Flaggenproblem

das Halteproblem

das Königsberger Brückenproblem

das Philosophenproblem

das Teilsummensummenproblem

das Post'sche Korrespondenz-Problem

das Rucksackprolem (Knapsackproblem)

das Rundreiseproblem - aber: beachte die Mächtigkeit!

das Springerproblem

die Türme von Hanoi - mit hoher Anzahl von Scheiben wird das Problem praktisch nicht lösbar - 64 ist bereits enorm hoch

das Knotenüberdeckungsproblem

The Busy Beaver-Problem

das Spannbaumproblem

der Maze-Running-Algorithmus

das Schachspiel

Greedy Algorithm

das Maximalflussproblem

das Syntheseproblem

 

das k-Next-Neighbor-Problem

 

Schwarmintelligenz

... fehlererkennende Algorithmen -  ISBN-Nummer

das Binärbaumproblem

geometrischen Probleme

Dijkstra-Algorithmus

Fermat'sches Problem

FERMAT's letzter Satz

 

ZIP-Algorithmus

 

Bresenham-Algorithmus

 

der Huffman-Code

LZW-Kompression

 

Quadratsummen-Problem

 

die glücklichen & traurigen Zahlen

 

Smarandache-Wellin-Zahlen

der austarierte Baum

 

Trunkierbare Primzahlen

 

FERMAT'scher Großer Satz

 

Eulerkreis

 

     

Worst-Case-Denken

Algorithmentheorie

Komplexität, Mächtigkeit und Aufwand

Praktische Elementaralgorithmen

Lösbarkeit und Problemlösungsstrategien

Klassische algorithmisch lösbare Probleme

Zufall und Computer

Graphentheorie

Petri-Netze



zur Hauptseite
© Samuel-von-Pufendorf-Gymnasium Flöha © Frank Rost am 7. Juni 2026 um 16.44 Uhr

... dieser Text wurde nach den Regeln irgendeiner Rechtschreibreform verfasst - ich hab' irgendwann einmal beschlossen, an diesem Zirkus nicht mehr teilzunehmen ;-)

„Dieses Land braucht eine Steuerreform, dieses Land braucht eine Rentenreform - wir schreiben Schiffahrt mit drei „f“!“

Diddi Hallervorden, dt. Komiker und Kabarettist

Diese Seite wurde ohne Zusatz irgendwelcher Konversationsstoffe erstellt ;-)