Alexander Brock: Datei ganz klein verpacken

Beitrag lesen

Hallo Forum,

echo ceil(log(6*1024*1024*1024, 2));

kleines Missverständnis. :-)
Es reichen 5 Byte (40bit), um die Dateigröße 6GB darzustellen. Aber nicht, um die Information "6GB groß, und alles Nullbytes" zu vermitteln. Dafür brauchst du zusätzlich zum "Zähler" noch die Angabe des Bytewerts, der so häufig wiederholt werden soll. Bei gängigen RLE-Codierungen wäre das also eine Art Escape-Zeichen (in der Regel ein bestimmter festgelegter Bytewert), dann das zu wiederholende Datenbyte, und schließlich die Anzahl der Wiederholungen. Da komme ich dann sogar auf minimal 7 Byte.

Das ist natürlich alles richtig, aber in diesem Fall haben wir es mit meinem soeben erfundenen Datenformat zu tun:

"Der Inhalt einer solchen Datei als vorzeichenloser ganzzahliger Wert gelesen ergibt die Anzahl nullbytes, die repräsentiert werden".

Gruß
Alexander Brock