Файл: Анализ методов кодирования данных.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 30.06.2023

Просмотров: 67

Скачиваний: 4

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Введение

Актуальность темы. К концу XX в. стала складываться, сначала в рам­ках кибернетики, а затем информатики, информаци­онная картина мира. Строение и функционирование сложных систем различной природы (биологических, социальных, технических) оказалось невозможным объяснить, не рассматривая общих закономерностей информационных процессов.

Автоматизированная система обработки информации (АСОИ) представляет собой совокупность информации, экономико-математических методов и моделей, технических, программных, технологических средств и штата специалистов, предназначенную для обработки информации и принятия управленческих решений

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

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

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

В связи с поставленной целью курсовой работы, были определенный следующие задачи:

  1. Рассмотреть основные определения кодирования. Алфавит кодирования;
  2. Изучить способ кодирование информации с помощью систем счисления;
  3. Охарактеризовать способы кодирования текстовой информации;
  4. Выявить способы кодирования целых и действительных чисел;
  5. Рассмотреть кодирование графических данных;
  6. Проследить особенности кодирования звуковой информации.

Объектом исследования курсовой работы является система кодирования данных.

Предметом исследования курсовой работы являются методы и приемы кодирования данных.

Структура курсовой работы. Курсовая работа состоит из введения, двух глав, разделенных на параграфы, заключения и списка литературы.

Глава 1. Сущность кодирования информации

1.1. Основные определения кодирования. Алфавит кодирования


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

Существует множество понятий и определений «кода». Но мы в своей работе будем опираться на следующее: «Код (code) – это совокупность знаков, символов и правил представления информации».[10, с.40]

В частности можно различать двоичный и троичный код. Алфавит первого ограничен двумя символами (0, 1), а второго – тремя символами (-1, 0, +1). Сигналы, реализующие коды, обладают одной из следующих характеристик:

    • униполярный код (значения сигнала равны 0, +1, либо 0, -1 );
    • полярный код (значения сигнала равны +1, -1);
    • биполярный код (значения сигнала равны 0, +1, -1).

Кодируемые элементы входного алфавита обычно называют символами. Символом, как правило, является цифра, буква, знак пунктуации или иероглиф естественного языка, знак препинания, знак пробела, специальный знак, символ операции. Кроме того, учитываются управляющие («непечатные») символы.

Кодирующие (обозначающие) элементы выходного алфавита называются знаками; количество различных знаков в выходном алфавите назовем значностью; количество знаков в кодирующей последовательности для одного символа – разрядностью кода.

Последовательным является такой код, в котором знаки следуют один за другим во времени. Параллельным – тот, в котором знаки передаются одновременно, образуя символ. [10, с.41]

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

Естественные языки обладают большой избыточностью для экономии памяти, объем которой ограничен, имеет смысл ликвидировать избыточность текста или уплотнить текст.

Существуют несколько способов уплотнения текста.

1. Переход от естественных обозначений к более компактным. Этот способ применяется для сжатия записи дат, номеров изделий, уличных адресов и т.д. Идея способа показана на примере сжатия записи даты. Обычно мы записываем дату в виде 10. 05. 01. , что требует 6 байтов памяти ЭВМ. Однако ясно, что для представления дня достаточно 5 битов, месяца - 4, года - не более 7, т.е. вся дата может быть записана в 16 битах или в 2-х байтах.

2. Подавление повторяющихся символов. В различных информационных текстах часто встречаются цепочки повторяющихся символов, например пробелы или нули в числовых полях. Если имеется группа повторяющихся символов длиной более 3, то ее длину можно сократить до трех символов. Сжатая таким образом группа повторяющихся символов представляет собой триграф S P N , в котором S – символ повторения; P – признак повторения; N- количество символов повторения, закодированных в триграфе. В других схемах подавления повторяющихся символов используют особенность кодов ДКОИ, КОИ- 7, КОИ-8 , заключающуюся в том, что большинство допустимых в них битовых комбинаций не используется для представления символьных данных.


3. Кодирование часто используемых элементов данных. Этот способ уплотнения данных также основан на употреблении неиспользуемых комбинаций кода ДКОИ. Для кодирования, например, имен людей можно использовать комбинации из двух байтов диграф PN, где P – признак кодирования имени, N – номер имени. Таким образом может быть закодировано 256 имен людей, чего обычно бывает достаточно в информационных системах. Другой способ основан на отыскании в текстах наиболее часто встречающихся сочетании букв и даже слов и замене их на неиспользуемые байты кода ДКОИ.

4. Посимвольное кодирование. Семибитовые и восьмибитовые коды не обеспечивают достаточно компактного кодирования символьной информации. Более пригодными для этой цели являются 5 - битовые коды, например международный телеграфный код МГК-2. Перевод информации в код МГК-2 возможен с помощью программного перекодирования или с использованием специальных элементов на основе больших интегральных схем (БИС). Пропускная способность каналов связи при передаче алфавитно-цифровой информации в коде МГК-2 повышается по сравнению с использованием восьмибитовых кодов почти на 40%.

5. Коды переменной длины. Коды с переменным числом битов на символ позволяют добиться еще более плотной упаковки данных. Метод заключается в том, что часто используемые символы кодируются короткими кодами, а символы с низкой частотой использования - длинными кодами. Идея такого кодирования была впервые высказана Хаффманом, и соответствующий код называется кодом Хаффмана. Использование кодов Хаффмана позволяет достичь сокращения исходного текста почти на 80%.

Использование различных методов уплотнения текстов кроме своего основного назначения – уменьшения информационной избыточности – обеспечивает определенную криптографическую обработку информации. Однако наибольшего эффекта можно достичь при совместном использовании как методов шифрования, так и методов кодирования информации [6, с.95].

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

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

Информация передается в виде сообщений. Дискретная информация записывается с помощью некоторого конечного набора знаков, которые будем называть буквами, не вкладывая в это слово привычного ограниченного значения (типа «русские буквы» или «латинские буквы»). Буква в данном расширенном понимании - любой из знаков, которые некоторым соглашением установлены для общения. Например, при передаче сообщений на русском языке такими знаками будут русские буквы. Вообще, буквой будем называть элемент некоторого конечного множества (набора) отличных друг от друга знаков. Множество знаков, в котором определен их порядок, назовем алфавитом.[18, с.86]


Рассмотрим некоторые примеры алфавитов.

1. Алфавит прописных русских букв:

А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я

2. Алфавит Морзе:

3. Алфавит клавиатурных символов ПЭВМ IBM (русифицированная клавиатура):

4. Алфавит знаков правильной шестигранной игральной кости:

5. Алфавит арабских цифр:

0123456789

6. Алфавит шестнадцатеричных цифр:

0123456789ABCDEF

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

7. Алфавит двоичных цифр:

0 1

Алфавит 7 является одним из примеров, так называемых, «двоичных» алфавитов, т.е. алфавитов, состоящих из двух знаков. Другими примерами являются двоичные алфавиты 8 и 9:

8. Двоичный алфавит «точка», «тире»: . _

9. Двоичный алфавит «плюс», «минус»: + -

10. Алфавит прописных латинских букв:

ABCDEFGHIJKLMNOPQRSTUVWXYZ

11. Алфавит римской системы счисления:

I V Х L С D М

12. Алфавит языка блок-схем изображения алгоритмов:

.

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

На рисунке приведена схема, иллюстрирующая процесс передачи сообщения в случае перекодировки, а также воздействия помех[3, с.11].

1.2 Кодирование информации с помощью систем счисления

Для записи информации о количестве объектов использу­ются числа. Числа записываются с использованием особых знаковых систем, которые называются системами счисле­ния. Алфавит систем счисления состоит из символов, кото­рые называются цифрами. Например, в десятичной системе счисления числа записываются с помощью десяти всем хо­рошо известных цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.


Система счисления — это знаковая система, в ко­торой числа записываются по определенным пра­вилам с помощью символов некоторого алфавита, называемых цифрами. [7, с.6]

Все системы счисления делятся на две большие группы: позиционные и непозиционные системы счисления.

Римская непозиционная система счисления. Самой рас­пространенной из непозиционных систем счисления являет­ся римская. В качестве цифр в ней используются: I (1), V (5), X (10), L (50), С (100), D (500), М (1000).

Значение цифры не зависит от ее положения в числе. На­пример, в числе XXX (30) цифра X встречается трижды и в каждом случае обозначает одну и ту же величину - число 10, три числа по 10 в сумме дают 30.

Величина числа в римской системе счисления определя­ется как сумма или разность цифр в числе. Если меньшая цифра стоит слева от большей, то она вычитается, если справа — прибавляется. Например, запись десятичного чис­ла 1998 в римской системе счисления будет выглядеть сле­дующим образом:

MCMXCVIII = 1000 + (1000 - 100) + (100 -10)+5 + 1 + 1 + 1.

Позиционные системы счисления. Первая позиционная система счисления была придумана еще в Древнем Вавило­не, причем вавилонская нумерация была шестидесятеричной, то есть в ней использовалось шестьдесят цифр! Инте­ресно, что до сих пор при измерении времени мы используем основание, равное 60 (в 1 минуте содержится 60 секунд, а в 1 часе — 60 минут).

В XIX веке довольно широкое распространение получи­ла двенадцатеричная система счисления. До сих пор мы ча­сто употребляем дюжину (число 12): в сутках две дюжины часов, круг содержит тридцать дюжин градусов и так да­лее.

В позиционных системах счисления количествен­ное значение цифры зависит от ее позиции в числе.

Наиболее распространенными в настоящее время позици­онными системами счисления являются десятичная, двоич­ная, восьмеричная и шестнадцатеричная. Каждая позицион­ная система имеет определенный алфавит цифр и основание.

В позиционных системах счисления основание системы равно количеству цифр (знаков в ее ал­фавите) и определяет, во сколько раз различают­ся значения одинаковых цифр, стоящих в сосед­них позициях числа.

Десятичная система счисления имеет алфавит цифр, кото­рый состоит из десяти всем известных, так называемых араб­ских, цифр, и основание, равное 10, двоичная — две цифры и основание 2, восьмеричная — восемь цифр и основание 8, шестнадцатеричная — шестнадцать цифр (в качестве цифр используются и буквы латинского алфавита) и основание 16.

Таблица 1.1