Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

4 курс / Практика / Справочник по алгоритмам

.pdf
Скачиваний:
12
Добавлен:
17.04.2015
Размер:
627.78 Кб
Скачать

Сначала алфавит сортируется по убыванию вероятности. Затем два последних символа объединяются в группу, для которой вычисляется суммарная вероятность. Последовательность заново упорядочивается и два последних символа объединяются снова. Процедура повторяется пока не будет получена единичная вероятность.

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

По таблице кодирования строится дерево. В корне – единичная вероятность и соответствующие ей символы алфавита. Из корня выходят две ветви – в узлы, соответствующие предпоследнему столбцу таблицы. Листья дерева – единичные символы алфавита. Всем левым ребрам (соответствующим меньшей вероятности) присваивается код ‘0’, правым – ‘1’. Код символа определяется при восходящем движении от листа к корню.

7.3. Кодирование информации при передаче по каналу с помехами

Основная теорема Шеннона:

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

2.Не существует способа кодирования, позволяющего вести передачу

информации с малой вероятностью ошибки, если производительность источника больше пропускной способности канала.

Кодирование должно осуществляться так, чтобы сигнал, соответствующий принятой последовательности символов после воздействия на него предполагаемой помехи, оставался ближе к сигналу, соответствующего переданной последовательности, чем к сигналам, соответствующим другим возможным последовательностям символов. Это достигается введением при кодировании избыточности, которая позволяет так выбрать передаваемую последовательность символов, чтобы они удовлетворяли условиям, проверка которых на принимающей стороне дает возможность обнаружить и исправить ошибку. Этот класс кодов называют помехоустойчивым. Коды, позволяющие исправлять ошибки, называют корректирующими. В них для каждой комбинации информационных символов значение кода может иметь неединственное значение, т.е. для каждой исходной комбинации существует некоторое множество закодированных комбинаций, каждая из которых позволяет восстановить исходную. В результате воздействия помехи, приводящей к изменению внутри допустимого множества, не влияет на правильность результата. Например, корректирующие коды в ЭВМ СМ-420, в

которых 16 бит представляются в виде 23 бит, значение которых вычисляется по специальным формулам, позволяющим собой полином некоторой степени, позволяют обнаруживать двойные ошибки и исправлять одиночные. Проверка четности, применяемая в модулях памяти DRAM, DDR современных ПК, позволяют обнаруживать единичные ошибки. Интегрированный кэш современных процессоров осуществляет проверку с помощью циклических кодов. Такая же ЕЦЦ проверка имеется в так называемой серверной памяти (которая предназначена для использования в серверах; стоимость такой памяти на порядок выше).

Необходимость применения корректирующих кодов определяется с помощью теории вероятности. По оценке фирмы IBM в 2000 года, в ОЗУ емкостью 256 Мб возможно появление ошибки в течение одного месяца. К основным причинам возникновения ошибок в ОЗУ относят космическое излучение.

Вопросы по теме

1.Основные алгоритмы криптографической защиты информации

2.Основная теорема Шеннона для передачи информации по каналу без помех

3.Эффективное кодирование

4.Код Шеннона-Фано

5.Код Хаффмана

6.Основная теорема Шеннона для передачи информации по каналу с помехами

7.Помехоустойчивые и корректирующие коды

8.Базовые алгоритмы двухмерной графики

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

Ввекторной графике изображение представляется описанием фигур (точка, отрезок, ломаная и кривая), которые отображаются аппаратными средствами или переводятся программно в растровое представление.

К базовым алгоритмам растровой графики относят алгоритмы, решающие следующие задачи:

1.Рисование отрезка прямой;

2.Рисование дуги эллипса;

3.Заполнение замкнутой области

Вопросы по теме

1.Базовые понятия и алгоритмы двумерной графики

Примечание [v1]: 20 или 23 или 32

Примечание [v2]: ???

9. Структуры данных

Уровни представления данных в информационных системах

Различают логический уровень, уровень хранения и физический уровень.

Классификация структур данных

Различают линейные и нелинейные, структуры данных фиксированной и переменной длины, однородные и неоднородные структуры данных. По способу представления различают с последовательным и связным представлением данных в памяти.

Примеры различных структур данных: Линейные – массив, список, очередь; Нелинейные – деревья, графы; Фиксированного размера – массив; Переменного размера – список; Однородные – массив;

Неоднородные – реализуются через структуру.

Обработка древовидных структур

Различают нисходящий, восходящий и смешанный обходы.

Вопросы по теме

1.Структуры данных