Blog. Just Blog

Быстрый поиск

Введите фрагмент названия статьи для поиска

Распаковка данных в формате BriefLZ на Ассемблере

10.02.2021 | Категория: Образ мышления: Assembler | Автор: ManHunter

Распаковка данных в формате BriefLZ на Ассемблере

Программиста Joergen Ibsen вы можете знать, как автора популярной библиотеки aPLib и DOS'овского упаковщика исполняемых файлов aPACK, который на протяжении многих лет неизменно занимал первые строки рейтингов по степени компрессии. Про aPLib поговорим позже, а сегодня будет распаковщик для еще одной разработки Joergen Ibsen - BriefLZ. Это высокоскоростная разновидность Lempel-Ziv алгоритма для сжатия данных, по степени компрессии приближающаяся к zlib.

Читать статью целиком »
Просмотров: 332 | Комментариев: 1

MessageBox с таймером обратного отсчета

31.01.2021 | Категория: Образ мышления: Assembler | Автор: ManHunter

MessageBox с таймером обратного отсчета

Наверняка вы сталкивались с диалоговыми окнами и окнами сообщений, в которых какое-то действие может быть выполнено только после истечения некоторого времени или которые сами продолжат работу через какой-то интервал. Это, например, могут быть инсталляторы, дающие пользователю возможность передумать, но начинающие установку обновлений через несколько секунд, если подтверждения от пользователя не было получено. Или уведомление о завершении какой-либо операции, которое пользователь прочитает и закроет, если в данный момент он находится у монитора. То есть в таких ситуациях, когда и пользователя надо о чем-то поставить в известность, но при этом обязательной ответной реакции от него ждать не требуется, так как с большой вероятностью он сделает именно так же или у него вообще не будет других вариантов. Примерно такое же поведение используют триальные окна, когда кнопка "OK" блокируется и вам приходится какое-то время наблюдать предложение метнуться в кассу.

Читать статью целиком »
Просмотров: 929 | Комментариев: 6

Распаковка данных в формате LZSA1 и LZSA2 на Ассемблере

27.01.2021 | Категория: Образ мышления: Assembler | Автор: ManHunter

Распаковка данных в формате LZSA1 и LZSA2 на Ассемблере

Алгоритм LZSA - представитель "высшей лиги" среди алгоритмов упаковки данных. Разработан в 2018 году признанным гуру упаковки Emmanuel Marty. Целью создания алгоритма LZSA была большая скорость упаковки данных и очень высокая степень компрессии для использования, главным образом, на 8-битных платформах. Существует две разновидности алгоритма LZSA, которые отличаются скоростью работы и, соответственно, степенью сжатия и размером модуля распаковки.

Читать статью целиком »
Просмотров: 379 | Комментариев: 2

Распаковка данных в формате ULZ на Ассемблере

21.01.2021 | Категория: Образ мышления: Assembler | Автор: ManHunter

Распаковка данных в формате ULZ на Ассемблере

Алгоритм упаковки ULZ (Ultra-fast LZ) был разработан Ильей Муравьевым в 2010 году, а в 2019 году выложен в открытый доступ. Илью вы должны помнить по модификации упаковщика LZ4. Алгоритм ULZ стал очередным развитием классического LZ77, но с максимальным упором на скорость упаковки и распаковки данных.

Читать статью целиком »
Просмотров: 361 | Комментариев: 4

Упаковка и распаковка данных в формате LZ77 на Ассемблере

13.01.2021 | Категория: Образ мышления: Assembler | Автор: ManHunter

Упаковка и распаковка данных в формате LZ77 на Ассемблере

Алгоритм сжатия LZ77, также известный как LZ1, впервые был опубликован в 1977 году и получил свое название по первым буквам фамилий его авторов - Abraham Lempel и Jacob Ziv. LZ77 стал родоначальником для множества других алгоритмов сжатия, в том числе и разобранных в предыдущих статьях. Из-за особенностей реализации, более-менее приличные результаты алгоритм показывает на данных с повторяющимися элементами. Например, текст или разреженные двоичные данные. Данные с уникальными последовательностями не только плохо сжимаются, но даже могут увеличиваться в размере после сжатия, так как к ним прибавляются служебные данные для распаковки.

Читать статью целиком »
Просмотров: 425 | Комментариев: 1

Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2021
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.12 сек. / MySQL: 3 (0.0509 сек.) / Память: 4.75 Mb
Наверх