Всем привет, мне пришел в голову алгоритм, схема с помощью которой можно сжимать файлы любого формата и объема в неограниченное количество раз ( степень сжатия упирается в первую очередь в объем ОЗУ, мощность процессора, и соответственно время архивации). Для компьютера с 4 гб оперативной памяти при времени архивации в пределах разумного можно сжать файл примерно в 50 раз. хочу пообщаться на эту тему. возможно это реализовывалось ранее, в интернете я не нашел данных об этом. высказывайте свои соображения как это можно сделать, или почему этого сделать нельзя.
Алгоритм тестировался на файлах очень малого обьема в ручную,я 100% уверен что он работает. чуть позже я расскажу суть алгоритма:)
P/S/ Если мне подскажут сколькими байтами можно записать число в промежутке от 1 до 10 000 000 ( только в этом промежутке) я смогу посчитать точнее.
НЕ СПАМ НЕ ПРИКОЛ ПРОСЬБА НЕ УДАЛЯТЬ!!!!!!
Последний раз редактировалось alfaz 03.02.2010 0:05, всего редактировалось 1 раз.
я так и думал, уважаемый moty я хотел пообщаться с программистами, хотя прикалываться тоже можно я считал и прикидывал в течении 2 недель, я совершенно серьезно, даже на спор побывал доказывать, 500рэ уже выиграл:)
на сооздание архиватора меня натолкнула мысль что количество оригинальных файлов ( не повторяюшихся) одного обьёма строго ограничено и извесно, считаеться по формуле : количиство бит файла*количество бит файла=количество оригинальных файлов, как пример: для файла размером один бит есть два варианта (0 и 1), для двух битов- 4 (11, 00 ,10, 01) для файла размером три бита - для двух битов 9 вариантов (111, 000, 101,010,100,001,110,011,110) скажем количество оригинальных файлов обьемом 1000 бит будет 1000*1000=1 000 000
далее, покажу как работает программа на примере 3 бит, предположим что есть маленький файл: 010101001010010100110101001101010100011 у программы есть база вариантов для 3 бит,выглядит она так: 1-111, 2-000, 3-101,4-010,5-100,6-001,7-110,8-011,9-110, анализирует файл, делит его на 3 битывые части и создает архив, находя варианты и вместо варианта пишет его номер
вот так это происходит: 010 101 001 010 010 100 110 101 001 101 010 100 010 а вот архив: 4 3 6 4 4 5 7 3 7 3 4 5 4 (естественно в двоичном виде)
обратным образом прога находя номер варианта в архиве, ставит на место номера вариант
Полевые условия. Возможность из сжатого файла получить оригинал. Или соответсвующая доза вещества, которое вы приняли в себя. И что-то мне кажеться, что 9 различных индексов будут занимать больше места, чем то, на что они будут указывать.
_________________ Библиотеки Windows - Мы заставим ваши папки тормозить!
тому кто объяснит что я неправ плюс сто! ага, смех это хорошо, значит не зря писал:) ты прав, iron3k при методе выборки последовательностей по 3 бита эффект отрицательный, при методе по 1000 бит, наоборот., смотри почему: 1000 бит -- весит отрезок файла. его номер - это число от 1 до 1 000 000, а число весит менее 8 бит. обьем базы- словаря со всеми вариантами файла 1000 бит равен 1000 бит*(количество варианотов оригинальных, не повторяющихся файлов обьемом 1000 бит ( 1000*1000= 1 000 000) = 120 мегабайт мы получили сжатие в 1000\8 = 125 раз
Добавлено спустя 1 минуту 33 секунды:
iron3k писал(а):
alfaz писал(а):
для файла размером три бита - для двух битов 9 вариантов
8 вариантов. 2 в 3 степени. можно узнать откуда такая информация?
alfaz писал(а):
скажем количество оригинальных файлов обьемом 1000 бит будет 1000*1000=1 000 000
2 в 1000 степени. 1.07150860718626732094842504906e+301 вариантов.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 26
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения