Thorsten Steffen: dt. Doku zu inflate deflate gesucht

Beitrag lesen

Hio,

ok, vielleicht war mein Post ein Schnellschuss :) daher versuch ich mein Problem mal näher zu Beschreiben, in der Hoffnung jmd rettet micht vor dem Wahnsinn ;)

Im Prinzip suche ich ein Artikel, Doku oder irgendetwas, dass mit erklären kann wie ich von einem unkomprimierten String zu dem Ergebnis komme das mir die PHP-Funktion gzdeflate() liefert. Und wenn möglich byte für byte :)
Und wie ich von dem komprimierten String nachvollziehen kann wie der unkomprimierte String zurückgebildet wird.

Soviel ich verstanden habe, spielt für gzdeflate() 2 Komprimierungs-Algorithmen eine Rolle, LZW und Huffmann.

Huffmann denke ich habe ich soweit verstanden. Es wird eine Code-Tabelle erzeugt, dir für jedes Zeichen eine bitfolge festlegt, wobei häufig vorkommende Zeichen kurze bitfolgen bekommen.

Somit würde sich das Wort Hallo wie folgt aufschlüsseln lassen

H           111
a           10
l           0
o           110

und würde sich komprimiert so präsentieren

1111000110

nur wie weiss ich nun das 111 ein H darstellt und nicht zufällig ein u oder ein t. Rein in der Form ist ja nicht nachzuvollziehen welcher Code welches Zeichen repräsentiert.

Also brauche ich ja eine "Übersetzungtabelle" in der die einzelnen Zeichen mit ihrem bitfolgen beschrieben werden. Nur wie diese genau funktioniert konnte ich nicht genau herausfinden bisher.
Irgendwo konnte ich lesen, das die "Übersetzungtabelle" mit dem am seltesten vorkommenden Zeichen beginnt und desweiteren als Trenner funktioniert und auch zur definition neuer Einträge in die Übersetzungtabelle" dient. Wie genau das funktionieren soll, noch keine Ahnung.

Ich kann das bisher noch nicht so recht nachvollziehen, zumal wenn ich mir das Ergebnis gzdeflate("Hallo") ausgeben lasse ich folgende bitfolge bekomme 11110011010010001100110011001001110010010000011100000000

wenn ich nun versuche nachzuvollziehen wie es dazu gekommen ist, .... ;)

Hoffe irgendwer erbamt sich meiner und rettet mich vor dem Wahnsinn.

gruss

Thorsten

Nur, wie weiss ich das