Файл: Методы кодирования данных(Определение понятия «кодирование информации» и его значение в дисциплине «Технологии программирования» ).pdf

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

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

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

Добавлен: 12.03.2024

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

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

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

Элементами данных, которые необходимо закодировать выступают[15]:

  • Буквы, слова, фразы;
  • Разного рода символы такие как знаки препинания, операции, которые выполняют в арифметике и логике и другие;
  • Числовые обозначения;
  • Аудиовизуальный образ;
  • Явления и ситуационные случаи и другие.

В роли кодовых обозначений чаще всего выступают:

  • Графические изображения
  • Электромагнитные, световые, звуковые сигналы[16];

Процедуру кодирования выполняют для того, чтобы[17]:

  • Создать удобство по хранению, обработке и передаче данных (в большинстве случаев, закодированные сведения представляются в более компактном виде, и форме, которую смогут обработать и передать автоматические программно-технические средства);
  • Производить удобный информационный обмен между субъектами;
  • Иметь наглядное изображение;
  • Идентифицировать объекты с субъектами;
  • Скрыть секретные сведения и другое.

Кодирование данных подразделяется на одно- и многоуровневое. Одноуровневым кодированием являются световые сигналы, которые, например, передаются на светофорах (красный-движение запрещено, желтый- готовиться к движению, зеленый- можно двигаться дальше). Примером, который может показать многоуровневое кодирование является демонстрация графической картинки в форме файла фотографии. Сначала картинку разбивают на составные части (пиксели). Другими словами, отдельные части изображения кодируются простыми элементами. В свою очередь, элементы представляются набором стандартных цветов, которые обладают необходимой яркостью, представленной числовым значением. В результате комбинации чисел, обычно, трансформируются для более удобного представления данных (в формате jpeg и других). В завершении, конечные числа кодируют как электромагнитные сигналы, чтобы была возможность передавать их через каналы связи либо области на информационном носителе. Необходимо подчеркнуть, что числа в процессе программной обработки принимают вид согласно принятой системе кодирования числовых элементов.

Процесс кодирования данных бывает обратимым и необратимым[18]. В случае обратимого кодирования из закодируемого послания возможно восстановление исходного образа (кодируемого сообщения).

В качестве примера кодирования обратимого можно привести представление знаков в телеграфном коде с их восстановлением после процесса передачи.


Необратимым кодированием является, например, перевод с одного языка на другой-обратный перевод, при котором практически невозможно восстановить исходный текст.[19]

Существуют также общедоступные и секретные системы кодирования[20]. Общедоступными пользуются, чтобы облегчить информационный обмен, секретными- для скрытия сведений от третьих лиц.

Таким образом в данном подпункте были даны определения понятиям «информация», «кодирование информации». Были даны определения другим понятиям, без которых невозможно всесторонне изучить выбранную тему. Изучены разновидности процесса кодирования информации. Была определена значимость кодирования информации.

1.2. Теория кодирования

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

Некоторые путают теорию кодирования с шифрованием, однако это не так. Используя криптографию, пользователи имеют обратную цель: способствовать затрудненному получению информации из данных.

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

  • Разработку принципов более экономичной кодировки данных;
  • Работу по согласованию параметров передаваемых данных с особенностями канала связи;
  • Разработку приемов, которые обеспечат надежную передачу данных, без отсутствия потерь;[21]

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

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

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

Данное состояние либо сигналы называют элементарные сигналы, совокупность которых составляет вторичный алфавит[22]. Задачей любого кода является обеспечение однозначного чтения сообщения (надежности) и экономичности (использование как можно меньшего количества элементов в одном сообщении).


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

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

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

Обычно, числа в компьютерах представлены нулями и единицами, это говорит о том, что компьютер работает с двоичной системой счисления, потому что устройства по их обработке получаются более простыми.

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

Алфавит, который предоставляет информацию до трансформации называют первичным, алфавит с конечным представлением-вторичным[23].

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

Среди основных проблем теории кодирования можно выделить взаимную однозначность кодирования и сложность реализации канала связи на основе заданных условий[24]. Поэтому теорией кодирования рассматриваются такие направления как[25]:

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


В качестве простого примера избыточности можно привести повторяющиеся куски текстовой информации[26];

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

Код, который задействован в прямой коррекции ошибок, требует большего количества избыточности передаваемой информации, чем код, который необходим для обнаружения ошибок. На практике активно применяются в компьютерных ЛВС LAN, а также в разнообразных телекоммуникационных сетях[27];

Криптографию, о который было сказано выше[28];

Физическое кодирование представляет собой метод предоставления данных в форме определенных сигналов. Для примера, в форме уровня амплитуды напряжения, тока, яркости и так далее;[29]

Обнаружение и исправление ошибок: процесс обнаружения ошибок в технике связи представляет собой контроль по сохранению целостности информации во время записи/воспроизведения данных либо их передаче по линиям связи.

Исправление ошибок либо их корректировка является процессом восстановления информационных данных после их прочтения в устройстве хранения, либо канале связи[30].

Теория кодирования включает в себя несколько направлений:

В случае с дискретными каналами без помех Шеннон доказал теорему: при производительности источника RИ<C-, в которой – любая маленькая величина, в любом случае имеется способ кодировки, который дает возможность передавать через канал каждое сообщение источника. Передача всех посланий при условии RИ>C невозможна[31].

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

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


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

Корректирующие коды- обнаруживают и исправляют ошибки, возникающие вследствие действия шума при хранении, передаче и обработке информации[32].

Циклические коды- часто используют­ся при передаче данных в локальных сетях и в интернете. Они осо­бенно эффективны для обнаружения пакетов ошибок в системах пе­редачи данных с переспросом[33].

Арифметические коды- алгоритм сжатия информации без потерь, который при кодировании ставит в соответствие тексту вещественное число из отрезка [0;1)[34].

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

Глава II. Кодирование разных типов информации
2.1. Методы кодирования данных

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

Еще одним способом кодировки натурального числового ряда являются римские числа. Более того данный способ является более наглядным и естественным, так, палец – I, пятерня – V, две пятерни – X. [35]Но используя этот способ вам будет сложнее проводить арифметические операции с большими числами. В этой связи, его вытеснил способ кодировки, который основан на позиционной десятичной системе счисления.

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

Известны способы числовой кодировки геометрических объектов и их положения в пространстве ( декартовы координаты и полярные координаты).

Как было сказано выше кодирование является процессом перевода данных, которые представлены в одной системе знаков, в другую систему[36].

Коды должны соответствовать ряду требований:

  • Они должны охватывать каждый элемент, который должен быть закодирован и обладать однозначным обозначением;
  • Предоставление возможности расширения элементов кодировки не изменяя, при этом, правила по их обозначению;
  • Стабильность, удобство восприятия и запоминание обозначений кодов, которые отвечают за простоту заполнения, чтения и обработки;
  • Максимальная информированность кода при наличии минимальной значности;
  • Возможность по использованию кодов, чтобы получить в автоматическом режиме сводные итоги, а также автоматический контроль кодовых обозначений, чтобы была возможность обнаружить ошибки;[37]