Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование в широком смысле слова > Алгоритмика

Алгоритмика Об алгоритмах вообще; методы, обсуждения способов решения

Ответ
 
Опции темы
Старый 16.08.2006, 10:59   #16
Maxus
ПроЭктировщик
 
Регистрация: 17.02.2006
Сообщений: 144
Написано 13 полезных сообщений
(для 36 пользователей)
Re: Как я писал самопальный архиватор (тутор-рассказ)

Сообщение от tormoz
Я книжку по спектрумовскому асму в Киеве заказывал, и переплачивал в 250 раз от номинала, а ты про превью какие то.
У нас в городе не фига не было.
Из всей комп-литературы - "Осваиваем компьютер" с 8 уроками на 40 страницах по Бейсику неизвестной модификации
Да ладно, в те времена этот журнал везде выходил, ZX-Ревю назывался, там и про АСМ и про загрузчики нестандартные и про гамы писали и про то как эти гамы устроены с позиции АСМа.
Я по этим книгам и познавал АСМ на Spectrume и о фишках западных программеров.
(Offline)
 
Ответить с цитированием
Старый 16.08.2006, 19:33   #17
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Re: Как я писал самопальный архиватор (тутор-рассказ)

Везде - это в центральной части России ?
__________________
(Offline)
 
Ответить с цитированием
Старый 16.08.2006, 19:48   #18
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Re: Как я писал самопальный архиватор (тутор-рассказ)

стоп офф-топ
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 17.08.2006, 10:59   #19
Maxus
ПроЭктировщик
 
Регистрация: 17.02.2006
Сообщений: 144
Написано 13 полезных сообщений
(для 36 пользователей)
Re: Как я писал самопальный архиватор (тутор-рассказ)

Сообщение от tormoz
Везде - это в центральной части России ?
Я жил тогда в Ташкенте, богом забытом Узбекистане.
А вообще в свое время я на Спектруме разработал систему сжатия по методу Хаффмана, тогда я даже незнал, что чел ее изобрел.
Мне казалось что это самый крутейший алгоритм сжатия.
(Offline)
 
Ответить с цитированием
Старый 28.08.2006, 01:55   #20
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Re: Как я писал самопальный архиватор (тутор-рассказ)

Книга Форматы и алгоритмы сжатия изображений
3,36 МБ
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Igor (22.05.2010)
Старый 28.08.2006, 12:50   #21
jimon
 
Сообщений: n/a
Re: Как я писал самопальный архиватор (тутор-рассказ)

там jpeg2000 есть ? нет.. ну и ладно
(блин ну и разговоры сам с собой)
 
Ответить с цитированием
Старый 30.08.2006, 15:41   #22
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Re: Как я писал самопальный архиватор (тутор-рассказ)

Краткое содержание
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 30.08.2006, 16:43   #23
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Re: Как я писал самопальный архиватор (тутор-рассказ)

Интересная книжка, как будет свободное время почитаю
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 30.10.2007, 19:42   #24
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Re: Как я писал самопальный архиватор (тутор-рассказ)

http://www.compression.ru/
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 10.01.2008, 16:14   #25
zubar
AnyKey`щик
 
Регистрация: 09.10.2007
Сообщений: 6
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Как я писал самопальный архиватор (тутор-рассказ)

здрасте!
я тож придумывал разные способы архивирования в основном работал напрямую с битами, основная цель была сделать суперархиватор, тоесть чтобы всегда ,при любом раскладе из 16 бит получалось 15.
изобретал, изобретал так ничего путного и не смог сделать, но я всеравно верю что это можно сделать (если очень захотеть, можно в космос полететь)
ща обдумываю два направления:
1) метод растущего дерева (сам придумал название )
"короче, изначально было семя потом оно потихоньку проросло в ствол, а потом ствол разветвился, а потом ещё и ещё и получилось много веток"
имеются исходные несколько байт (заархивированный файл), потом "какимито непонятными, ещё не придуманными способами" байты образуют новые байта, а те новые, и через некоторое время получаем разорхивированный файл
2) родилчик (тоже сам придумал)
код1 рождает код2, код2 рождает код3 и т.д и т.п
осталось придумать алгоритмы которые смоглибы такое организовать
(Offline)
 
Ответить с цитированием
Старый 10.01.2008, 16:34   #26
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Как я писал самопальный архиватор (тутор-рассказ)

Хм, очень часто бывают повторения в комбинации битов, дык, почему бы просто не вылавливать длинные повторения, и маленькие, и затем их вносить в список, и использовать только индекс повторения заместо вставления его полностью, таким образом можно сэкономить, но если много повторений.
(Offline)
 
Ответить с цитированием
Старый 10.01.2008, 18:28   #27
IGR
Blitz's Shame !!
 
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений
(для 2,013 пользователей)
Ответ: Как я писал самопальный архиватор (тутор-рассказ)

Хм, очень часто бывают повторения в комбинации битов, дык, почему бы просто не вылавливать длинные повторения, и маленькие, и затем их вносить в список, и использовать только индекс повторения заместо вставления его полностью, таким образом можно сэкономить, но если много повторений.
МоКа, так врод и делают !! или не так ??
(о, сорри, еще один монолог )
(Offline)
 
Ответить с цитированием
Старый 10.01.2008, 21:11   #28
Fla
ПроЭктировщик
 
Регистрация: 22.12.2007
Сообщений: 107
Написано 15 полезных сообщений
(для 15 пользователей)
Ответ: Как я писал самопальный архиватор (тутор-рассказ)

Тоже писал когда свой архиватор. Принцип был примитивен до безобразия.

{код символа}
Т.к. таблица носки состоит из 128 основных символов и 128 дополнительных, то делаем так. Юзаем символ с кодом 0 как кодировочный. Собственно символы с кодами до 128 оставляем без изменения, а от {128-255} заключаем их между {0}, вычитая из кода каждого символа 128. Т.к. {128+0} это большое русское А(у нас=)) то при раскодировке все в лучшем случае неправильно раскодируется, то 'А' будем кодировать как {0}{0} (да, смайлик, я знаю).
Тогда строка "АБВГДЕЖЗЕИ" будет представлена как {0}{0} {0}коды букв - 128{0}
В чем же архивирование? У нас была 256-ричная система, а стала 128-ричная. Т.е. уменьшилась в 2 раза! Теперь мы все это побитово записываем в файл. При этом один символ у нас занимает не 8 позиций, а семь!
Ну а разархивировать это дело совсем просто.

*Кстати русские тексты, аски-арт(и вообще все, где преимущественно символы от {128} до {256} архивирует на ура=)
**Сейчас пороюсь и выложу сырцы
***Не нашел, оказывается я эту хрень на асме писал. Ну как на асме, на ++ со вставками.

Последний раз редактировалось Fla, 10.01.2008 в 21:23.
(Offline)
 
Ответить с цитированием
Старый 10.01.2008, 22:01   #29
FrankH
Разработчик
 
Регистрация: 09.12.2007
Сообщений: 376
Написано 83 полезных сообщений
(для 122 пользователей)
Re: Как я писал самопальный архиватор (тутор-рассказ)

Еще сидя за "системником" ZX и изучая асм, прочел о примитивнейшем методе сжатия - составление базы "пустых" блоков. Тогда показалось интересным и не более.
Лет семь назад захотелось попробовать прогать на С, а сделать решил свой кодировщик, но так как собирался добавлять ключ для кодировки то под него надо было освободить в файле место, обычный метод был не лишним, но не актуальным при кодировании архивов и проч. Пришлось написать свой алгоритм, родил за пару дней приблизительно такой принцип:
1) бьем файл на блоки, анализируем на соответствие блока маске из готового набора. Маска должна увеличить число пустых битов в байте.
2) если необходимо, делаем вычитания или прибавления по маске, инфу о маске сохраняем в базу(например: блок,маска№5)
3) теперь у нас есть какой-то процент блоков, имеющих по четыре свободных бита в байте, смещаем байты и смешиваем блоки так, чтобы заполнить пустоты в байтах.
4)повторяем процедуру до потери актуальности..
Проверялось все на бумаге, и работало со случайным набором символов уменьшая файл на 10 и более процентов. Был так е вариант без масок, уменьшение размера от 4%
после недели долботни то ли с Сишными, то ли с компиляторскими глюками забил на С вообще.. Блитца тогда не знал..
(Offline)
 
Ответить с цитированием
Старый 11.01.2008, 00:17   #30
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Re: Как я писал самопальный архиватор (тутор-рассказ)

Сообщение от zubar Посмотреть сообщение
здрасте!
тоесть чтобы всегда ,при любом раскладе из 16 бит получалось 15.
изобретал, изобретал так ничего путного и не смог сделать, но я всеравно верю что это можно сделать (если очень захотеть, можно в космос полететь)
Не люблю это слово - но это невозможно.
Тому можно привести много подтверждений из различных дисциплин, все они, так или иначе поднимаются в курсе Теории Передачи Информации.

Если на пальцах:
сжатие 16 бит до 15.. положим даже так N сжимаем до T (где T<N).
Получаем, что после архивации имеем вместо N бит - T.
Обозначим частное N/T за J. J>1 (исходя из утверждения, что T<N)
Таким образом, T=N/J. Т.е. ratio архивирования составляет const J.
Далее заключим следующий факт:
Для любого количества архивируемой информации, измеряемой M, найдётся такое кол-во проходов сжатия (итераций архивирования) S, что M` (размер информации после многократного сжатия) M`->0 Принимая во внимание логику задачи: любой сколь угодно большой файл лбой энтропии всегда можно сжать до 1 байта, и даже меньше (например в одном байте хранить 8 файлов - каждый по биту). Не верите? - убедитесь сами:
Миниатюры
Нажмите на изображение для увеличения
Название: Буфер обмена02 граф.jpg
Просмотров: 857
Размер:	31.6 Кб
ID:	4193  
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Кто писал или кто знает как писать ELF для sonyericsson ger1234567 Delphi 2 10.07.2010 18:43
Рассказ "Карандаш" Жека Проза 2 24.11.2009 09:17
Рассказ magpro Проза 19 11.07.2007 00:45
Писал пост tormoz Баги 8 03.07.2006 17:39
Архиватор SubZer0 Болтовня 3 18.10.2005 19:47


Часовой пояс GMT +4, время: 05:08.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com