Hola.
Bueno, lo que quiero es saber la mejor forma de comprimir un archivo y tengo un idea, pero tiene sus problemas:
Tengo un archivo de X tamaño.
Leo sierto numero de bits que es determinado por el tamaño del archivo (tiene que ser asi, porque es la unica forma de que no se sature la memoria), a esto lo llamo bloque.
Tomo este bloque y lo "desdoblo" en un orden ascendente de bits (pack("b*", bloque)) y remplaso sierta combinacion de unos y ceros por otros numeros.
El problema es que al "desdoblarlo" el tamaño del archivo queda mucho mas grande y al remplasar, el archivo queda mas grande.
El error es que al pasarlo a bits cada caractel queda en 8 bits de tamaño (es decir, la letra "a" queda en 8 unos y ceros, que cada uno ocupa 8 bits de taño)
Entonces, como seria el algoritmo perfecto para esto?
Gracias.