Файл: Методы кодирования данных ( Основные принципы кодирования данных).pdf
Добавлен: 05.07.2023
Просмотров: 86
Скачиваний: 3
Введение
Потребность кодировать информацию, т.е. преобразовывать ее для каких-то специфических целей, люди испытывали и в докомпьютерную эпоху. Письменность есть ни что иное, как способ кодировать сообщения для долговременного хранения, публикации или отправки адресату. То же можно сказать о цифрах, применяемых для вычислений, записи дат. Музыка уже несколько веков записывается с помощью нот.
Со временем появились специальные системы кодирования для передачи информации с помощью радиосигналов (азбука Морзе), для людей с ограниченными возможностями (азбука Брайля для незрячих, азбука жестов для глухонемых). По мере развития науки и техники были внедрены знаковые системы для отдельных отраслей человеческой деятельности. Химики пользуются особыми формулами для записи структуры молекул, астрономы - для обозначения интенсивности блеска и цвета небесных тел, инженеры, создавая чертежи и схемы, применяют стандартизированные условные обозначения. В каждой отрасли человеческой деятельности есть свои особенности общения между специалистами, свой сленг, свои символы.
С появлением компьютеров кодирование информации унифицировалось: все традиционные знаковые системы были оцифрованы, т. е. приведенными к виду, пригодному для использования в компьютерных системах. Кодирование для них производится посредством электрических импульсов, для которых характерны: полярность; время активности; фаза; частота.
Сегодня кодирование – это трансляция информационных данных из одного формата обозначений, в иной системный формат, иными словами, - преобразование текста из обычного, понятного людям, формата, в форму записи посредством кодов. Кодовое обозначение - это знак или несколько знаков, которые обозначают данный объект согласно некоторым законам, предписанным кодовой системой.
Актуальность выбранной темы обусловлена тем, что в связи с широким распространением персональных компьютеров не только как средств обработки информации, но также как оперативных средств коммуникации (электронная, телефаксная почта), возникают проблемы, связанные с обеспечением защиты информации от преднамеренных или случайных искажений. Поэтому необходимость кодирования информации имеет большое значение в решении этой проблемы и остаётся актуальной и на сегодняшний день.
Целью данной работы является изучение существующих методов кодирования данных.
Для достижения поставленной цели необходимо решить ряд задач:
- Изучить основные принципы кодирования данных,
- Рассмотреть основные методы кодирования текстовой и числовой информации,
- Изучить особенности кодирования графической информации.
Объектом исследования в данной работе является информационный процесс обработки данных.
Предмет исследования – способы и методы кодирования данных.
В структуру данной работы входит введение, основная часть, состоящая из трех глав, заключение и список использованной литературы.
1. Основные принципы кодирования данных
Под кодированием понимается преобразование информации в другой (альтернативный) формат. По существу, системы кодирования являются аналогом шифру поимённой подмены, когда каждый единичный модуль информационных данных, подлежащих кодировке, заменяется соответствующим ему шифром[1]. Однако есть и отличие, и оно состоит в наличии у операции шифрования так называемой изменяемой части (ключа). Эта изменяемая часть для одного и того же передаваемого сообщения и при неизменном алгоритме, способна выдать различные тексты шифровки. При использовании кодировки вместо шифрования, такой изменяемой составляющей просто нет. Именно из-за этого одно и тоже передаваемое сообщение при многократном кодировании не меняет свой вид, а всегда имеет одинаковый формат.
Ещё одним отличием кодирования можно считать использование кодовых заменителей для целых слов и даже предложений или набора цифр. Подмена частей информации, подлежащей кодированию, кодовыми символами выполняется на базе специальных таблиц (аналогичных таблицам шифровальных замен) или определяется с помощью алгоритмов или функций для кодировок.
Кодирование в общем понимании — это процесс преобразования данных в формат, необходимый для удовлетворения потребностей в обработке информации, в том числе[2]:
- Компиляция и исполнение программы.
- Передача данных, хранение и сжатие (декомпрессия).
- Обработка данных приложений, таких как преобразование файлов.
Все виды кодов могут иметь два значения:
- В компьютерной технологии кодирование представляет собой процесс применения определенного кода, такого как буквы, символы и цифры, к данным для преобразования в эквивалентный шифр.
- В электронике кодирование относится к аналого-цифровому преобразованию.
Компонентами информации, подлежащими кодированию, могут быть[3]:
- Предложения (фразы) разговорной речи, отдельные слова или буквы.
- Разные символьные обозначения, к примеру, операции логики и арифметики, знаки препинания, операторы сравнения (больше, меньше, равно) и тому подобное. Надо заметить, что сами знаки операций и операторы сравнения относятся к кодовым обозначениям.
- Цифры (числа).
- Аудио и визуальные объекты (образы).
- Различные явления и ситуации.
- Информация, переданная по наследству.
Кодовыми обозначениями могут выступать:
- Комбинации букв разговорного языка и непосредственно буквы.
- Различные цифры (числа).
- Обозначения в виде графических изображений.
- Звуковые и световые команды (сигналы)
- Электрические и электромагнитные импульсы.
- Комбинация различных химических молекул.
Основными задачами (целями) кодирования информации являются:
- Создать дополнительные преимущества для сохранения, анализа и пересылки данных (практически всегда информация в виде кодов занимает меньше места в памяти и более приспособлена для работы с ней и пересылки автоматизированными программными и техническими средствами).
- Обеспечить удобный обмен информацией между объектами.
- Сделать наглядным отображение.
- Выполнить идентификацию субъектов и объектов.
- Скрыть доступ к секретной информации.
Существует одноуровневое кодирование информации и многоуровневое. Например, световые сигналы светофора (красный, жёлтый, зелёный) - это одно уровневое кодирование. Многоуровневым кодированием является визуальный образ фотографии, сохранённый как отдельный файл. Сначала фотография расчленяется на отдельные мелкие модули (пиксели), то есть все мелкие составляющие части изображения кодируются элементарными модулями (элементами). Каждый элемент может быть представлен как набор составляющих основных цветов: красного, зелёного и синего каждый с требуемой амплитудой (интенсивностью), выраженной в форме числа. В дальнейшем числовые наборы переформатируются (перекодируются) для того, чтобы сделать информацию более компактной (к примеру, форматы jpeg, png и так далее). В итоге, полученные числовые значения преобразуются (перекодируются) в электромагнитные импульсы и передаются по специальным каналам для коммутации или зонам на информационных носителях[4]. Необходимо также отметить, что конкретные числовые значения при работе программы, представлены согласно правилам используемой системы кодировки чисел.
Существуют обратимые и необратимые способы кодирования информационных данных:
- Если используется обратимое кодирование, то закодированная информация всегда может быть восстановлена без потери данных. К таким типам кодирования можно отнести, к примеру, азбуку Морзе или штрих-кодирование.
- При применении необратимого кодирования нет возможности достоверно восстановить исходную информацию. Примерами могут служить коды аудио и визуальной информации (в форматах jpg, mp3 или avi), а также хеширование.
Существуют системы кодирования с общим доступом и засекреченные системы. Первый тип применяется для улучшения качества обмена информацией, второй тип для обеспечения скрытности данных от несанкционированного доступа.
Таким образом, можно говорить о том, что кодированием информации называют преобразование данных в вид, удобный для обработки и передачи. То есть, по сути, это превращение одной информационной формы в другую. А собственно код — это комбинация символов для обозначения общепринятых и общеизвестных понятий.
Как правило, определённые образы при кодировке (можно сказать шифровании) могут быть выражены определёнными знаками. Набор различных знаков образует некое множество с ограниченным набором элементов. Электронные вычислительные машины способны работать только с информационными данными, заданными в формате чисел[5]. Поэтому информационные данные других видов (к примеру, речь, различные звуки, изображения и так далее) для использования и преобразования компьютерными программами необходимо представить в числовом формате.
В качестве примера можно рассмотреть преобразование в формат набора чисел музыкальных звуков. Для этого необходимо через определённые временные интервалы определять амплитуду звуковых колебаний на некотором наборе частот, выражая в виде числа итоги этих замеров. Далее, используя специальное программное обеспечение, возможно сделать практически любую обработку этих данных. К примеру, соединить звуковую информацию от различных источников.
Аналогично этому, возможно преобразовывать и любые данные, представленные в виде текста. При наборе текста, например, с клавиатуры компьютера, любой символ заменяется некоторым числовым значением, а при выводе сформированного текстового файла на дисплей или принтер, выполняется обратная процедура. То есть набор чисел преобразуется в понятные людям визуальные образы букв.
Выстроенную связь между числовыми значениями и соответствующими им буквами, можно назвать кодировкой символов. В компьютерной технике принято использовать не десятичную, а более легко реализуемую электроникой, двоичную систему счисления. То есть, применяются всего две цифры ноль и единица, что соответствует двум устойчивым состояниям базового элемента электроники, триггера[6]. Но ввод и вывод числовой информации осуществляется в привычной обычному человеку десятичной системе счисления, что обеспечивает соответствующее программное обеспечение.
Одни и те же информационные данные можно выразить (кодировать) в различных форматах. С созданием электронных вычислительных машин появилась потребность кодировать практически все типы информационных данных, с которыми связаны конкретные люди и всё мировое сообщество в целом. Но заниматься проблемой шифрования (кодирования) информации люди начали ещё до изобретения электронных вычислительных машин. Великие изобретения людей, какими являются письменность и математика (и её подраздел, арифметика), по сути и есть методы кодирования человеческой речи и числовых данных.
В абсолютно чистом виде информацию мы нигде не встретим, в любом случае она будет как-то выражена (закодирована). Самым распространённым методом выражения информации является система двоичных кодов. В электронных вычислительных машинах, в роботизированных комплексах, в устройствах числового программного управления (УЧПУ) металлорежущими и другими станками, информационные данные, с которыми оперирует оборудование, представлены в виде набора двоичных чисел.
2. Методы кодирования текстовой (символьной) и числовой информации
Любой текст может состоять из различных символов:
- букв (латинского и национального алфавитов);
- цифр (чаще всего т.н. арабских);
- иероглифов (китайских, японских, корейских и т.д.);
- знаков препинания и типографских символов;
- специальных знаков (математических, физических, таких, как знак градуса Цельсия);
- прочих символов, как, к примеру, недавно появившиеся знаки «эмодзи».
Общее количество символов, употребляемых человечеством измеряется сотнями, а возможно и тысячами, причем в будущем, по мере появления новых знаний, этот перечень, скорее всего, будет расширен.
Оптимальный способ представить символ в памяти компьютера - присвоить ему порядковый номер. Однако длина двоичного числа для каждого такого номера должна быть постоянной, иначе придется хранить о ней дополнительную информацию, что осложнит обработку. Стандартным решением этой проблемы является кодировка Unicode, где каждому знаку соответствует 16-битная последовательность. Всего таких различных последовательностей может быть 65536, поэтому Unicode способен не только вместить в себя все существующие на сегодняшний день системы письменности, но и содержит достаточно свободного пространства для будущего применения[7].