Библиотека Рефераты Курсовые Дипломы Поиск
Библиотека Рефераты Курсовые Дипломы Поиск
сделать стартовой добавить в избранное
Кефирный гриб на сайте www.za4et.net.ru

Компьютеры, Программирование Компьютеры, Программирование

Delphi. Немного относительно методов упаковки данных

Ручка "Помада".
Шариковая ручка в виде тюбика помады. Расцветка корпуса в ассортименте, без возможности выбора!
25 руб
Раздел: Оригинальные ручки
Чашка "Неваляшка".
Ваши дети во время приёма пищи вечно проливают что-то на ковёр и пол, пачкают руки, а Вы потом тратите уйму времени на выведение пятен с
222 руб
Раздел: Тарелки
Совок большой.
Длина 21,5 см. Расцветка в ассортименте, без возможности выбора.
21 руб
Раздел: Совки

Ru i g - Это самый простой из методов упаковки информации . Предположите что Вы имеете строку текста, и в конце строки стоит 40 пробелов. Налицо явная избыточность имеющейся информации. Проблема сжатия этой строки решается очень просто - эти 40 пробелов ( 40 байт ) сжимаются в 3 байта с помощью упаковки их по методу повторяющихся символов (ru i g). Первый байт, стоящий вместо 40 пробелов в сжатой строке, фактически будет явлться пробелом ( последовательность была из пробелов ) . Второй байт - специальный байт "флажка" который указывает что мы должны развернуть предыдущий в строке байт в последовательность при восстановлении строки . Третий байт - байт счета ( в нашем случае это будет 40 ). Как Вы сами можете видеть, достаточно чтобы любой раз, когда мы имеем последовательность из более 3-х одинаковых символов, заменять их выше описанной последовательностью , чтобы на выходе получить блок информации меньший по размеру, но допускающий восстановление информации в исходном виде. Оставляя все сказанное выше истинным , добавлю лишь то, что в данном методе основной проблемой является выбор того самого байта "флажка", так как в реальных блоках информации как правило используются все 256 вариантов байта и нет возможности иметь 257 вариант - "флажок". На первый взгляд эта проблема кажется неразрешимой , но к ней есть ключик , который Вы найдете прочитав о кодировании с помощью алгоритма Хаффмана ( Huffma ). LZW - История этого алгоритма начинается с опубликования в мае 1977 г. Дж. Зивом ( J. Ziv ) и А. Лемпелем ( A. Lempel ) статьи в журнале "Информационные теории " под названием " IEEE ra s ". В последствии этот алгоритм был доработан Терри А. Велчем ( erry A. Welch ) и в окончательном варианте отражен в статье " IEEE Compu e " в июне 1984 . В этой статье описывались подробности алгоритма и некоторые общие проблемы с которыми можно столкнуться при его реализации. Позже этот алгоритм получил название - LZW (Lempel - Ziv - Welch) . Алгоритм LZW представляет собой алгоритм кодирования последовательностей неодинаковых символов. Возьмем для примера строку " Объект Sor edCollec io порожден от Collec io .". Анализируя эту строку мы можем видеть, что слово "Collec io " повторяется дважды. В этом слове 10 символов - 80 бит. И если мы сможем заменить это слово в выходном файле, во втором его включении, на ссылку на первое включение, то получим сжатие информации. Если рассматривать входной блок информации размером не более 64К и ограничится длинной кодируемой строки в 256 символов, то учитывая байт "флаг" получим, что строка из 80 бит заменяется 8 16 8 = 32 бита. Алгоритм LZW как-бы "обучается" в процессе сжатия файла. Если существуют повторяющиеся строки в файле , то они будут закодированны в таблицу. Очевидным преимуществом алгоритма является то, что нет необходимости включать таблицу кодировки в сжатый файл. Другой важной особенностью является то, что сжатие по алгоритму LZW является однопроходной операцией в противоположность алгоритму Хаффмана ( Huffma ) , которому требуется два прохода. Huffma - Сначала кажется что создание файла меньших размеров из исходного без кодировки последовательностей или исключения повтора байтов будет невозможной задачей.

Но давайте мы заставим себя сделать несколько умственных усилий и понять алгоритм Хаффмана ( Huffma ). Потеряв не так много времени мы приобретем знания и дополнительное место на дисках. Сжимая файл по алгоритму Хаффмана первое что мы должны сделать - это необходимо прочитать файл полностью и подсчитать сколько раз встречается каждый символ из расширенного набора ASCII. Если мы будем учитывать все 256 символов, то для нас не будет разницы в сжатии текстового и EXE файла. После подсчета частоты вхождения каждого символа, необходимо просмотреть таблицу кодов ASCII и сформировать мнимую компоновку между кодами по убыванию. То есть не меняя местонахождение каждого символа из таблицы в памяти отсортировать таблицу ссылок на них по убыванию. Каждую ссылку из последней таблицы назовем "узлом". В дальнейшем ( в дереве ) мы будем позже размещать указатели которые будут указывает на этот "узел". Для ясности давайте рассмотрим пример: Мы имеем файл длинной в 100 байт и имеющий 6 различных символов в себе . Мы подсчитали вхождение каждого из символов в файл и получили следующее : cимвол A B C D E F число вхождений 10 20 30 5 25 10 Теперь мы берем эти числа и будем называть их частотой вхождения для каждого символа. Разместим таблицу как ниже. cимвол C E B F A D число вхождений 30 25 20 10 10 5 Мы возьмем из последней таблицы символы с наименьшей частотой. В нашем случае это D (5) и какой либо символ из F или A (10), можно взять любой из них например A. Сформируем из "узлов" D и A новый "узел", частота вхождения для которого будет равна сумме частот D и A : Частота 30 10 5 10 20 25 Символа C A D F B E -- -- - 15 = 5 10 -- Номер в рамке - сумма частот символов D и A. Теперь мы снова ищем два символа с самыми низкими частотами вхождения. Исключая из просмотра D и A и рассматривая вместо них новый "узел" с суммарной частотой вхождения. Самая низкая частота теперь у F и нового "узла". Снова сделаем операцию слияния узлов : Частота 30 10 5 10 20 25 Символа C A D F B E -- - 15 - -- ---- 25 - = 10 15 -- Рассматриваем таблицу снова для следующих двух символов ( B и E ). Мы продолжаем в этот режим пока все "дерево" не сформировано, т.е. пока все не сведется к одному узлу. Частота 30 10 5 10 20 25 Символа C A D F B E -- - 15 - -- -- ---- 25 - - 45 - - - -- ---- 55 ------ - ------------ --- Roo (100) ---- ------------ Теперь когда наше дерево создано, мы можем кодировать файл . Мы должны всегда начинать из корня ( Roo ) . Кодируя первый символ (лист дерева С) Мы прослеживаем вверх по дереву все повороты ветвей и если мы делаем левый поворот, то запоминаем 0-й бит, и аналогично 1-й бит для правого поворота. Так для C, мы будем идти влево к 55 ( и запомним 0 ), затем снова влево (0) к самому символу . Код Хаффмана для нашего символа C - 00. Для следующего символа ( А ) у нас получается - лево,право,лево,лево , что выливается в последовательность 0100. Выполнив выше сказанное для всех символов получим C = 00 ( 2 бита ) A = 0100 ( 4 бита ) D = 0101 ( 4 бита ) F = 011 ( 3 бита ) B = 10 ( 2 бита ) E = 11 ( 2 бита ) Каждый символ изначально представлялся 8-ю битами ( один байт ), и так как мы уменьшили число битов необходимых для представления каждого символа, мы следовательно уменьшили размер выходного файла .

Сжатие складывется следующим образом : Частота первоначально уплотненные биты уменьшено на C 30 30 x 8 = 240 30 x 2 = 60 180 A 10 10 x 8 = 80 10 x 3 = 30 50 D 5 5 x 8 = 40 5 x 4 = 20 20 F 10 10 x 8 = 80 10 x 4 = 40 40 B 20 20 x 8 = 160 20 x 2 = 40 120 E 25 25 x 8 = 200 25 x 2 = 50 150 Первоначальный размер файла : 100 байт - 800 бит; Размер сжатого файла : 30 байт - 240 бит; 240 - 30% из 800 , так что мы сжали этот файл на 70%. Все это довольно хорошо, но неприятность находится в том факте, что для восстановления первоначального файла, мы должны иметь декодирующее дерево, так как деревья будут различны для разных файлов . Следовательно мы должны сохранять дерево вместе с файлом . Это превращается в итоге в увеличение размеров выходного файла . В нашей методике сжатия и каждом узле находятся 4 байта указателя, по этому, полная таблица для 256 байт будет приблизительно 1 Кбайт длинной. Таблица в нашем примере имеет 5 узлов плюс 6 вершин ( где и находятся наши символы ) , всего 11 . 4 байта 11 раз - 44 . Если мы добавим после небольшое количество байтов для сохранения места узла и некоторую другую статистику - наша таблица будет приблизительно 50 байтов длинны. Добавив к 30 байтам сжатой информации, 50 байтов таблицы получаем, что общая длинна архивного файла вырастет до 80 байт . Учитывая , что первоначальная длинна файла в рассматриваемом примере была 100 байт - мы получили 20% сжатие информации. Не плохо . То что мы действительно выполнили - трансляция символьного ASCII набора в наш новый набор требующий меньшее количество знаков по сравнению с стандартным. Что мы можем получить на этом пути ? Рассмотрим максимум которй мы можем получить для различных разрядных комбинацй в оптимальном дереве, которое является несимметричным. Мы получим что можно иметь только : 4 - 2 разрядных кода; 8 - 3 разрядных кодов; 16 - 4 разрядных кодов; 32 - 5 разрядных кодов; 64 - 6 разрядных кодов; 128 - 7 разрядных кодов; Необходимо еще два 8 разрядных кода. 4 - 2 разрядных кода; 8 - 3 разрядных кодов; 16 - 4 разрядных кодов; 32 - 5 разрядных кодов; 64 - 6 разрядных кодов; 128 - 7 разрядных кодов; -------- 254 Итак мы имеем итог из 256 различных комбинаций которыми можно кодировать байт. Из этих комбинаций лишь 2 по длинне равны 8 битам. Если мы сложим число битов которые это представляет, то в итоге получим 1554 бит или 195 байтов. Так в максимуме , мы сжали 256 байт к 195 или 33%, таким образом максимально идеализированный Huffma может достигать сжатия в 33% когда используется на уровне байта Все эти подсчеты производились для не префиксных кодов Хаффмана т.е. кодов, которые нельзя идентифицировать однозначно. Например код A - 01011 и код B - 0101 . Если мы будем получать эти коды побитно, то получив биты 0101 мы не сможем сказать какой код мы получили A или B , так как следующий бит может быть как началом следующего кода, так и продолжением предыдущего. Необходимо добавить, что ключем к построению префиксных кодов служит обычное бинарное дерево и если внимательно рассмотреть предыдущий пример с построением дерева , можно убедится , что все получаемые коды там префиксные.

Диафрагмы, представлявшие собой резиновые колпачки, окруженные упругим кольцом, выпускались разных размеров; врач или опытная медсестра подбирали женщине диафрагму по размеру матки и обучали эффективному использованию. Правильное использование подразумевает подбор нужного размера, заполнение колпачка веществом, убивающим сперматозоиды, умение правильно ввести диафрагму во влагалище и установить на шейке матки непосредственно перед половым актом. При соблюдении всех правил диафрагма обеспечивает гарантию контрацепции примерно на 95%. В те несколько минут, которые партнерша проводит в ванной, возясь с диафрагмой, мужчине не мешало бы подумать об удобствах использования презерватива, надевание которого требует всего 5 секунд. СПЕРМИЦИДЫ. Вещества, убивающие сперматозоиды (спермициды), используемые без диафрагмы, действуют немного менее эффективно, но зато вводить их гораздо быстрее и удобнее. Они продаются без рецепта врача и выпускаются в виде мазей, пены, гелей, свечек и пропитанных жидкостью губок. МЕТОД МЕНОРИТМА Данный метод не столь ненадежен, как заявляют его критики, но менее удобен, чем утверждают его энтузиасты

1. Влияние метода сбора данных на вербальное поведение респондентов

2. "Запечатанный буклет": альтернативный метод сбора данных в опросах по сенситивной проблематике

3. Методы компьютерной обработки статистических данных

4. Оценка методов и средств обеспечения безошибочности передачи данных в сетях

5. Разработка базы данных `ДЕКАНАТ` в среде программирования "Delphi"

6. Исследование помехоустойчивого канала передачи данных методом имитационного моделирования на ЭВМ
7. Исследование помехоустойчивого канала передачи данных методом имитационного моделирования на ЭВМ
8. Сравнительная характеристика методов принятия решений относительно инвестиционных программ

9. Разработка баз данных в Delphi

10. Аспектно-ориентированные методы в управлении информационными потоками баз данных ДП АСУТП

11. Комплексный метод оценивания дополнительных аудиторских рисков, возникающих в условиях компьютерной обработки данных, на основе современных информационных технологий

12. База данных "Автосервис" в среде Borland Delphi 6.0.

13. Блочно-симметричные модели и методы проектирования систем обработки данных

14. Кабинетные исследования и методы сбора вторичных данных. Исследование предпочтений студентов в проведении досуга (посредством личных интервью)

15. Методы анализа эмпирических данных

16. Метод Золотого сечения на Delphi

Принцессы. 5 часов активной игры. Более 400 наклеек!. Ватт Фиона
Все девчонки очень любят наряжаться! А еще они с удовольствием поют и танцуют. Им нравится путешествовать, узнавать что-то новое и вообще
346 руб
Раздел: Альбомы, коллекции наклеек
Дневник в комплекте с пеналом "Джинс", цвет обложки синий.
Формат: А5+ (210х160 мм). Количество листов: 48. Внутренний блок: белый офсет 70 г/м2, печать в 1 краску. Способ скрепления:
354 руб
Раздел: Для старших классов
Пазл-рамка "Где чей домик?", дерево (2 слоя).
Вкладыши в игре сложной формы и поэтому, подбирать для них места на доске, занятие не самое простое. Для начала можно не вынимать животных
380 руб
Раздел: Рамки-вкладыши

17. Исследование природных ресурсов планеты с помощью космических методов

18. Изучение миксомицетов среднего Урала, выращенных методом влажных камер

19. Методы исследования в цитологии

20. МЕТОДЫ ИЗУЧЕНИЯ ЭВОЛЮЦИИ ЧЕЛОВЕКА

21. Методологическое значение сравнительного метода в зоологических исследованиях

22. Метод радиоавтографии в биологии
23. Подготовка данных и движение по азимутам
24. Зажигательные смеси, состав, средства применения и доставки, вызываемые повреждения, методы лечения и защиты

25. Дания

26. Особенности годового хода приземной температуры воздуха в разных частях Земли по данным ОА Гидрометцентра РФ

27. План статистического наблюдения и данные переписи населения

28. Гидрохимический, атмохический и биогеохимический методы поисков

29. Добыча золота методами геотехнологии

30. Безработица в России /данные на 1992г/

31. Основні методи боротьби з інфляцією

32. Предмет, метод, источники Административного права

Набор посуды "Щенячий патруль", 3 предмета.
Посуда подходит для мытья в посудомоечной машине и использования в микроволновой печи. Яркая посуда с любимыми героями порадует малыша и
578 руб
Раздел: Наборы для кормления
Кукла-балерина.
Кукла-балерина "Принцессы Диснея" очень любит танцевать! Поэтому она нарядилась в специальный костюм с пышной юбочкой-пачкой,
541 руб
Раздел: Куклы-модели, современные
Фоторамка на 10 фотографий Alparaisa С32-019 "Love", 69x35,5 см (белый).
Размеры рамки: 69х35,5х2 см. Размеры фото: - 15х10 см, 6 штук, - 10х15 см, 4 штуки. Фоторамка-коллаж для 10-ти фотографий. Материал:
743 руб
Раздел: Мультирамки

33. Методы осуществления государственной власти

34. Метод гражданско правового регулирования

35. Предмет, метод и система гражданского процессуального права /Украина/

36. Корпорация BBC. Формы и методы государственного контроля вещания

37. Математические методы и модели в конституционно-правовом исследовании

38. Формы и методы выхода предприятий на внешний рынок
39. Финансовый контроль: формы, методы, органы
40. Эффективные методы изучения иностранных языков

41. База данных для проекта досугового учреждения в городе Муроме Владимирской области

42. Естественная и гуманитарная культуры. Научный метод

43. Русская здрава (методы оздоровления на Руси)

44. Даниил Иванович Хармс

45. Дидактические возможности отдельных методов обучения на уроках литературы в старших классах

46. Теория лингвистической относительности Сепира - Уорфа

47. Данило Нечай - сподвижник Богдана Хмельницкого

48. Метод комплексного археолого-искусствоведческого анализа могильников

Пазл "Животные".
Деревянный пазл "Животные" позволит детям провести досуг весело и с пользой. Ребенку предстоит собирать на специальной доске
410 руб
Раздел: Деревянные пазлы
Форма для кексов "Easy", 27х18х3 см.
Форма для кексов с антипригарным покрытием. Материал: углеродистая сталь. Размер: 27х18х3 см.
385 руб
Раздел: Формы и формочки для выпечки
Пенал большой "Pixie Crew" с силиконовой панелью для картинок (цветная клетка).
Повседневные вещи кажутся скучными и однотонными, а тебе хочется выглядеть стильно и быть не как все? "Pixie Crew" сделает твою
1402 руб
Раздел: Без наполнения

49. Цивилизационные методы в изучении истории

50. Конвертер программы с подмножества языка Си в Паскаль с использованием LL(1) метода синтаксического анализа (выражения)

51. Методичка по Internet Explore

52. Шифрование по методу UUE

53. Оптимальное управление вычислениями в распределенных вычислительных системах на основе графа потоков данных

54. Системы, управляемые потоком данных. Язык "Dataflow Graph Language"
55. Разработка методов определения эффективности торговых интернет систем
56. Интерфейсные БИС, параллельный и последовательный в/в, сопроцессор в/в, наиболее известные БИС, Модемы, протоколы обменами данных

57. Информация, информатика, базы данных. Периферийные устройства

58. Данные и информация

59. Разработка алгоритмов и программ выполнения операций над последовательными и связанными представлениями структур данных

60. Метод Дэвидона-Флетчера-Пауэлла

61. Защита информации от несанкционированного доступа методом криптопреобразования /ГОСТ/

62. Обучение начальных курсов методам программирования на языке Turbo Pascal

63. Динамическое представление данных

64. Проектирование и разработка баз и банков данных

Держатель-рулетка для бейджей "Style", желтый.
Используется для ношения именных, магнитных или пропускных карточек. Крепление бейджа: карабин-петля. Подходит ко всем бейджам, имеющим
383 руб
Раздел: Бейджи, держатели, этикетки
Шары Ньютона "Эврика", металл (арт. 98085).
Движение – это жизнь! Небольшая настольная кинетическая скульптура в собранном виде демонстрирует закон сохранения энергии, открытый
891 руб
Раздел: Антистрессы
Пленка воздушно-пузырчатая 2-х слойная, плотность 75 г/кв.м.
Универсальный упаковочный материал. Препятствует повреждению товаров при ударе, предотвращает проникновение влаги и пыли, защищает от
423 руб
Раздел: Фольга

65. Модифицированный симплекс-метод с мультипликативным представлением матриц

66. Методы приобретения знаний в интеллектуальных системах

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

68. Разработка Интерфейса Пользователя АСУ в Среде Delphi

69. Реляционные Базы Данных. SQL - стандартный язык реляционных баз данных

70. Примеры баз данных (Студенческая группа)
71. База данных "Домашняя библиотека"
72. Современные системы управления базами данных

73. Анализ пакетов обработки экспериментальных данных SABR и BOOTSTRAP

74. Разработка базы данных, отражающей учет успеваемости студентов

75. Вычисление определённого интеграла с помощью метода трапеций на компьютере

76. Разработка базы данных "Кадры"

77. Интегрирование методом Симпсона

78. Лекции по теории проектирования баз данных (БД)

79. Структуры данных: бинарное упорядоченное несбалансированное дерево

80. Программирование на Object Pascal в среде Delphi

Ватман "Kroyter Проф", А1, 100 листов.
Нарезанные листы ватмана для черчения. Формат: А1 (600Х840 мм). Плотность: 200 г/м2. В наборе: 100 листов.
2739 руб
Раздел: Прочее
Именная кружка с надписью "Любимая мама".
Предлагаем вашему вниманию готовое решения для подарка по любому поводу – именная кружка. Кружка изготовлена из керамики, в нежной
434 руб
Раздел: Кружки
Копилка-раскраска "Лисенок".
Набор для творчества. Копилка-раскраска. Пластиковая копилка легкая, приятная на ощупь, не бьется при падении и ее легко раскрашивать. В
324 руб
Раздел: Копилки

81. Fox Pro - реляционная модель данных

82. Система управления базами данных ACCESS

83. Алгоритм создания базы данных складского учета

84. Разработка базы данных для объекта автоматизации: гомеопатическая аптека

85. Создание базы данных "Библиотека"

86. Отчёт по созданию курсовой работы «База данных ACCESS»
87. Разработка рисунка настенного календаря с помощью графического редактора CorelDRAW. Создание базы данных «Туристических фирм г. Минска» с помощью пакета программ Access
88. Инструкция по эксплуатации базы данных магазина «Телевизоры» средствами Access 2000

89. Учебник для продвинутых по Delphi 7

90. Системы обработки информации - язык баз данных SQL со средствами поддержания целостности

91. Защита цифровой информации методами стеганографии

92. Компьютерные вирусы, типы вирусов, методы борьбы с вирусами

93. HTML и базы данных

94. КОНСОЛИДАЦИЯ ДАННЫХ И ФИЛЬТРЫ В MicroSoft Excel

95. Анализ криптостойкости методов защиты информации в операционных системах Microsoft Window 9x

96. Система поддержки принятия маркетинговых решений в торговом предприятии на основе методов Data Mining

Ванная комната "Конфетти".
Набор мебели для кукольной комнаты подойдет для кукол размером до 30 см. Комплектность: коврик большой, коврик, флакон - 2 штуки, пробка к
878 руб
Раздел: Ванные комнаты
Антипригарный коврик, многоразовый, 33x40 см.
Антипригарный коврик используется для выпечки кондитерских и хлебобулочных изделий, приготовления пиццы, запекания мяса и рыбы без
311 руб
Раздел: Коврики силиконовые для выпечки
Штора для ванной "Рыжий кот", арт. SC-РЕ09.
Штора для ванной Рыжий кот SC-РЕ09 изготовлена из 100% полиэстера с тефлоновой пропиткой. Материал ценится за свою устойчивость ко
364 руб
Раздел: Занавески

97. Парольные методы защиты информации в компьютерных системах от несанкционированного доступа

98. Лабораторная работа №7 по "Основам теории систем" (Решение задачи коммивояжера методом ветвей и границ)

99. Лабораторная работа №6 по "Основам теории систем" (Решение задачи о ранце методом ветвей и границ)


Поиск Рефератов на сайте za4eti.ru Вы студент, и у Вас нет времени на выполнение письменных работ (рефератов, курсовых и дипломов)? Мы сможем Вам в этом помочь. Возможно, Вам подойдет что-то из ПЕРЕЧНЯ ПРЕДМЕТОВ И ДИСЦИПЛИН, ПО КОТОРЫМ ВЫПОЛНЯЮТСЯ РЕФЕРАТЫ, КУРСОВЫЕ И ДИПЛОМНЫЕ РАБОТЫ. 
Вы можете поискать нужную Вам работу в КОЛЛЕКЦИИ ГОТОВЫХ РЕФЕРАТОВ, КУРСОВЫХ И ДИПЛОМНЫХ РАБОТ, выполненных преподавателями московских ВУЗов за период более чем 10-летней работы. Эти работы Вы можете бесплатно СКАЧАТЬ.