Автор Тема: Написал крохотную файлосжималку на ASM под Win64  (Прочитано 3444 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн iqfun

  • iqfun.ru
  • Старожил
  • ****
  • Сообщений: 496
  • iqfun.ru
    • Просмотр профиля
    • Играем и растём над собой
Для любителей мелких программных жемчужин.

В качестве демонстрации моих быстрых подпрограммок для сжатия/разжатия данных написал предельно простенькую консольную программку для сжатия/разжатия одного файла. Можете скачать отсюда:
http://www.cronc.com/lz4i64.zip
6.5 Кб в ехе файле!
Ваш процессор должен поддерживать AVX команды (см. https://ru.wikipedia.org/wiki/AVX ). Если ваш проц впервые вышел в 2011 г. или позже, то это будет так. Программка скомпилирована так, что читает файл кусками по миллиарду байтов, поэтому для разжатия большого файла понадобится ~2 Гб свободной памяти.

Файл в 100 Мб (ехе, текст, ...) сжимает почти в 2 раза примерно за 0.7 с. Разжимает почти вдвое быстрее.

Программка работает примерно, как известная биб-ка lz4 француза Yann Collet (см. https://github.com/lz4/lz4 ).
Я особо тщательно правильность работы не проверял, поэтому пользуйтесь на свой страх и риск.
Сергей
www.iqfun.ru