PDA

Просмотр полной версии : Архив


KaMiKaDzE
03.02.2007, 11:37
как максимально сжать файл. у меня че та не получается Winrar-ом. вот в игре StarWars Battlefront2 там есть архив размером 220 Кб а внутри образ диска объемом 3,5 Гб как это объяснить?

Pavel
03.02.2007, 11:38
как максимально сжать файл. у меня че та не получается Winrar-ом. вот в игре StarWars Battlefrolt2 там есть архив размером 220 Кб а внутри образ диска объемом 3,5 Гб как это объяснить?
ГЛЮКОМ!

KaMiKaDzE
03.02.2007, 12:03
ГЛЮКОМ!

как так!!! тады почему там размер только 200 Кб?

Pandemonium
03.02.2007, 16:38
Ив этом образе все файлы имеют нулевой размер

KaMiKaDzE
03.02.2007, 20:54
Ив этом образе все файлы имеют нулевой размер

да нет же! образ имеет размер в 3,5 гига.

furbath
03.02.2007, 20:58
это просто глюк не реал чтобы такое было а если так то те нада бы нобелевскую премию

Pavel
03.02.2007, 21:01
...есть архив размером 220 Кб а внутри образ диска объемом 3,5 Гб ...
да нет же! образ имеет размер в 3,5 гига.
Снова и снова, чушь какая-то!
Ну давай пари: Запиши на 3,5" флоппи-диск. Если в архиве окажится 3,5 Гб, то 3 500 руб. твои - если нет то мои. :-)

KaMiKaDzE
03.02.2007, 21:19
Снова и снова, чушь какая-то!
Ну давай пари: Запиши на 3,5" флоппи-диск. Если в архиве окажится 3,5 Гб, то 3 500 руб. твои - если нет то мои. :-)

не хочу лишать тебя денег. блин вы че не врубаетесь!!! посмотрите сами в GAMES игру SW:Battlefront2 там есть архив blhsb2mi размером 136Кб внутри еще 2 архива и второй архив blh-swb2 весит 276 Кб!!!! а когда его разархивировать то он весит уже не 276 Кб. кто нибудь может дать нормальный разумный ответ на вопрос ПОЧЕМУ ТАК?

MaXiMuS_Ru
03.02.2007, 21:41
Так вот это может быть из-за множественного архивирования, хотя до такой степени это не реально...в 200мегов, я архивировал 2,5 гига

KaMiKaDzE
03.02.2007, 21:44
Так вот это может быть из-за множественного архивирования, хотя до такой степени это не реально...в 200мегов, я архивировал 2,5 гига

вот и я про это. КАК ОНИ ЭТО СДЕЛАЛИ?

furbath
03.02.2007, 21:47
не хочу лишать тебя денег. блин вы че не врубаетесь!!! посмотрите сами в GAMES игру SW:Battlefront2 там есть архив blhsb2mi размером 136Кб внутри еще 2 архива и второй архив blh-swb2 весит 276 Кб!!!! а когда его разархивировать то он весит уже не 276 Кб. кто нибудь может дать нормальный разумный ответ на вопрос ПОЧЕМУ ТАК?

может там 276 МБ ?

MaXiMuS_Ru
03.02.2007, 21:49
может там 276 МБ ?

Нет там 276 кб

KaMiKaDzE
03.02.2007, 22:20
это какая то техника сжатия или что то еще? я пробовал архивировать архив но ничего не получилось

Pandemonium
03.02.2007, 22:45
По-моему они сначала упаковали образ диска, а затем отредактировали образ прямо в архиве - из образа выкинули все что не нужно для запуска игры.
Вроде это делается через - UltraIso!

RalF
08.02.2007, 11:56
Это просто почти весь диск заменен нулевыми значениями. Такое щас сплош и рядом. Обычный файл и меет большое количество нулей и единиц идущих друг за другом в особом порядке, архиватор их поределяет и распределяет и парные, повторяющие знаки заменяет одним с каким-нибудь индексом (именно по этому некоторые файлы сжимаются лучше остальных), а соответственно если файл будет иметь почти одни нули он его и сожмет до минимума как в вашем случае то до двухста килобайт.

KaMiKaDzE
08.02.2007, 12:04
Это просто почти весь диск заменен нулевыми значениями. Такое щас сплош и рядом. Обычный файл и меет большое количество нулей и единиц идущих друг за другом в особом порядке, архиватор их поределяет и распределяет и парные, повторяющие знаки заменяет одним с каким-нибудь индексом (именно по этому некоторые файлы сжимаются лучше остальных), а соответственно если файл будет иметь почти одни нули он его и сожмет до минимума как в вашем случае то до двухста килобайт.

в смысле в ней нет информации чтоли?

RalF
08.02.2007, 12:19
в смысле в ней нет информации чтоли?

Угу, там только ссылки на размеры файлов их типы и т.д. Вот по этому и 217 кб, так бы вообще до байт сжали бы :)

RalF
08.02.2007, 12:22
Только что специально искал в пройденном матерьяле и нашел только 1 способ архивации (в тетрадке было где-то еще два или три):
Применение бинарных деревьев для сжатия информации
Рассмотрим применение деревьев для сжатия информации. Под сжатием мы будем понимать получение более компактного кода.
Рассмотрим следующий пример. Имеется текстовая строка S, состоящая из 10 символов
S = ABCCCDDDDD
При кодировании одного символа одним байтом для строки потребуется 10 байт.
Попробуем сократить требуемую память. Рассмотрим, какие символы действительно требуется кодировать. В данной строке используются всего 4 символа. Поэтому можно использовать укороченный код.
A 00
B 01
C 10
D 11
S = 00, 01, 10, 10, 10, 11, 11, 11, 11, 11 (20 бит)
В данном случае мы проанализировали текст на предмет использования символов. Можно заметить, что различные символы имеют различную частоту повторения. Существуют методы кодирования, позволяющие использовать этот факт для уменьшения длины кода.
Одним из таких методов является кодирование Хафмена. Он основан на использовании кодов различной длины для различных символов. Для максимально повторяющихся символов используют коды минимальной длины.
Построение кодовой таблицы происходит с использованием бинарного дерева. В корне дерева помещаются все символы и их суммарная частота повторения. Далее выбирается наиболее часто используемый символ и помещается со своей частотой повторения в левое поддерево. В правое поддерево помещаются оставшиеся символы с их суммарной частотой. Затем описанная операция проводится для всех вершин дерева, которые содержат более одного символа.
Само дерево может быть использовано в качестве кодовой таблицы для кодирования и декодирования текста. Кодирование осуществляется следующим образом. Для очередного символа в качестве кода используется путь от листа соответствующего символа к корню дерева. Причем каждому левому поддереву приписывается ноль, а каждому правому √ единица.

Тогда для строки S будет получен следующий код
S=11011110101000000
Длина кода составляет 17 бит, что меньше по сравнению с укороченным кодом.


Если кто не поленился может и поймет как примерно (не обязательно именно так) проходит архивация файлов :)