Виды кодирования информации

Кодирование информации

Виды кодирования информации

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

Кодирование — процесс представления информации (сообщения) в виде кода.

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

Научные основы кодирования были описаны К.Шенноном, который исследовал процессы передачи информации по техническим каналам связи (теория связи, теория кодирования).

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

Такое кодирование связано с потребностью приспособить код к используемым техническим средствам работы с информацией (см. “Передача информации”).

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

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

Цели кодирования и способы кодирования

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

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

Например, фразу: “Здравствуй, дорогой Саша!” приходится писать так: “Zdravstvui, dorogoi Sasha!”.

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

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

Расшифровать (декодировать) стенограмму может только стенографист.

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

Если надо записать текст в темпе речи — используем стенографию; если надо передать текст за границу — используем английский алфавит; если надо представить текст в виде, понятном для грамотного русского человека, — записываем его по правилам грамматики русского языка.

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

Используя же алфавит арабской десятичной системы счисления, пишем: “35”. Второй способ не только короче первого, но и удобнее для выполнения вычислений.

Какая запись удобнее для выполнения расчетов: “тридцать пять умножить на сто двадцать семь” или “35 х 127”? Очевидно — вторая.

Однако если важно сохранить число без искажения, то его лучше записать в текстовой форме. Например, в денежных документах часто сумму записывают в текстовой форме: “триста семьдесят пять руб.” вместо “375 руб.”.

Во втором случае искажение одной цифры изменит все значение. При использовании текстовой формы даже грамматические ошибки могут не изменить смысла. Например, малограмотный человек написал: “Тристо семдесять пят руб.”.

Однако смысл сохранился.

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

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

Методами шифрования занимается наука под названием криптография (см. “Криптография”).

История технических способов кодирования информации

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

Телеграфное сообщение — это последовательность электрических сигналов, передаваемая от одного телеграфного аппарата по проводам к другому телеграфному аппарату. Эти технические обстоятельства привели С.

Морзе к идее использования всего двух видов сигналов — короткого и длинного — для кодирования сообщения, передаваемого по линиям телеграфной связи.

Сэмюэль Финли Бриз Морзе (1791–1872), США

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

Самым знаменитым телеграфным сообщением является сигнал бедствия “SOS” (Save Our Souls — спасите наши души). Вот как он выглядит в коде азбуки Морзе, применяемом к английскому алфавиту:

••• ––– •••

Три точки (буква S), три тире (буква О), три точки (буква S). Две паузы отделяют буквы друг от друга.

На рисунке показана азбука Морзе применительно к русскому алфавиту. Специальных знаков препинания не было. Их записывали словами: “тчк” — точка, “зпт” — запятая и т.п.

Характерной особенностью азбуки Морзе является переменная длина кода разных букв, поэтому код Морзе называют неравномерным кодом. Буквы, которые встречаются в тексте чаще, имеют более короткий код, чем редкие буквы. Например, код буквы “Е” — одна точка, а код твердого знака состоит из шести знаков.

Это сделано для того, чтобы сократить длину всего сообщения. Но из-за переменной длины кода букв возникает проблема отделения букв друг от друга в тексте. Поэтому приходится для разделения использовать паузу (пропуск). Следовательно, телеграфный алфавит Морзе является троичным, т.к.

в нем используется три знака: точка, тире, пропуск.

Равномерный телеграфный код был изобретен французом Жаном Морисом Бодо в конце XIX века. В нем использовалось всего два разных вида сигналов. Не важно, как их назвать: точка и тире, плюс и минус, ноль и единица.

Это два отличающихся друг от друга электрических сигнала. Длина кода всех символов одинаковая и равна пяти. В таком случае не возникает проблемы отделения букв друг от друга: каждая пятерка сигналов — это знак текста.

Поэтому пропуск не нужен.

Жан Морис Эмиль Бодо (1845–1903), Франция

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

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

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

В современных компьютерах для кодирования текстов также применяется равномерный двоичный код (см. “Системы кодирования текста”).

Методические рекомендации

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

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

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

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

Предложите ученикам подумать о том, как можно обойтись без разделения букв в коде. Эти размышления должны привести к идее равномерного кода, в котором каждый символ кодируется двумя десятичными цифрами: А — 01, Б — 02 и т.д.

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

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

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

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

Подробно многие из этих вопросов раскрываются в учебном пособии “Математические основы информатики” [1].

1. Андреева Е.В., Босова Л.Л., Фалина И.Н. Математические основы информатики. Элективный курс. М.: БИНОМ. Лаборатория Знаний, 2005.

2. Бешенков С.А., Ракитина Е.А. Информатика. Систематический курс. Учебник для 10-го класса. М.: Лаборатория Базовых Знаний, 2001, 57 с.

3. Винер Н. Кибернетика, или Управление и связь в животном и машине. М.: Советское радио, 1968, 201 с.

4. Информатика. Задачник-практикум в 2 т. / Под ред. И.Г. Семакина, Е.К. Хеннера. Т. 1. М.: БИНОМ. Лаборатория Знаний, 2005.

5. Кузнецов А.А., Бешенков С.А., Ракитина Е.А., Матвеева Н.В., Милохина Л.В. Непрерывный курс информатики (концепция, система модулей, типовая программа). Информатика и образование, № 1, 2005.

6. Математический энциклопедический словарь. Раздел: “Словарь школьной информатики”. М.: Советская энциклопедия, 1988.

7. Фридланд А.Я. Информатика: процессы, системы, ресурсы. М.: БИНОМ. Лаборатория Знаний, 2003.

Источник: http://xn----7sbbfb7a7aej.xn--p1ai/informatika_kabinet/inf_prozes/inf_prozes_12.html

Кодирование и декодирование информации: что это такое – Geek-nose

Виды кодирования информации

Рассмотрим детальнее, что такое кодирование сообщений, а также декодирование информации.

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

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

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

Рассмотрим эти понятия детальнее, а также все виды и наглядные примеры кодирования/декодирования.

Cодержание:

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

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

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

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

Двоичный код использует алфавит, который состоит из двух символов – «0» и «1».

 Декодирование – это процедура обратная к кодированию. Декодировщик обратно превращает код в понятную для человека форму представления данных. Среди известных примеров постоянной работы с декодированием можно отметить азбуку Морзе: для «прочтения» сообщения нужно сначала преобразовать полученный код в слова. 

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

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

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

Все эти действия выполняются за тысячные доли секунды.

вернуться к меню ↑

Первым техническим средством кодирования данных был созданный в 1792 году телеграф Шаппа.

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

В результате, телеграф мог отобразить и передать набор фигур.

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

Телеграф Морзе

Созданный в 1837 году телеграф Морзе стал революционном устройством кодирования/декодирования информации.

Принцип кодирования заключался в преобразовании любого сообщения в три символа алфавита:

  • Длинный сигнал – тире;
  • Короткий сигнал – точка;
  • Нет сигнала – пауза.

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

Радиоприёмник

В 1899 году А. Попов создал первый в мире беспроводной телеграф или радиоприемник.

Принцип его работы заключался в кодировании электрических сигналов азбукой Морзе и её дальнейшей передаче на длительные расстояния.

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

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

вернуться к меню ↑

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

Использование каждого из методов зависит от среды, цели и условий создания кода.

С разными алгоритмами кодирования мы сталкиваемся в повседневной жизни:

  • Для записи разговорной речи в режиме реального времени используется стенография;
  • Для написания и отправки письма жителю другой страны используем язык получателя;
  • Для набора русского текста на англоязычной клавиатуре используем транслит. К примеру, «Привет»>«Privet» и так далее.

вернуться к меню ↑

Самый простой и распространенный способ кодирования – это представление информации в двоичном (бинарном) коде.

С его помощью работают все компьютеры и вычислительные системы.

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

С помощью единиц передается высокое напряжение, а с помощью нолей – низкое.

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

На рисунке ниже изображена таблица для цифровой и символьной раскладки, а также для букв латиницы.

К примеру, в результате перевода фразы «Hello, how are you?» получим последовательность «10010001000101100110010011001001111010110001000001001000100111110101110100001000001101001010001010100000101100110011111010101».

Чтобы выполнить декодирование информации, необходимо разделить бинарный код на части, каждая из которых равна семи ячейкам:

  • 1001000 – символ «H»
  • 1000101 – символ «E»
  • 1001100 – символ «L»
  • 1001100 – символ «L»
  • 1001111 – символ «O»
  • 0101100 – символ «,» и так далее, пока вся последовательность не будет декодирована.

Также, в теории кодирования можно встретить не только двоичную систему, но и троичную, четвертую, пятую, шестую…шестнадцатеричную и другие системы.

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

Таким образом, удаётся добиться более быстрого выполнения кода центральным процессором. Примером такого языка является машинный код ассемблер.

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

Так шестнадцатеричная система декодируется в двоичную.

Рис.3 – пример декодирования зыков программирования разных уровней

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

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

Онлайн-кодировщики

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

Также, они могут декодировать текст, самостоятельно определяя, какую систему использовал пользователь для кодировки.

Популярным сервисом для создания или расшифровки двоичного кода является DecodeIT .

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

Рис.4 — Сервис DecodeIT

вернуться к меню ↑

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

Для кодирования символов используются различные стандарты, среди которых Юникод, ASCII, UTF-8 и другие.

Зачем нужна кодировка символов?

Любые символы на экране компьютера или смартфона отображаются за счет двух вещей:

1 Векторного представления; 

2 Предустановленных знаков и их кода. 

Знаки – это шрифты, которые поддерживаются устройством. В ОС Windows они находятся в окне Панель управления (директория «Шрифты»).

С помощью этой папки вы можете добавлять или удалять существующие представления символов.

С помощью программного кода выбирается нужное векторное направление символа и его изображение из папки «Шрифты».

Таким образом, на экране появляется буква и текст.

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

Разбирая код, приложение обрабатывает кодировку знака и ищет его соответствие в поддерживаемом для этого же документа шрифте.

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

Рис.5 – пример ошибки кодирования символов в Блокноте Windows

Чтобы символы кириллицы и латиницы открывались без проблем в большинстве программ, было предложено ввести стандарты кодирования.

Один из наиболее популярных – это Юникод (или Unicode).

Он поддерживается практически всеми существующими шрифтами и программным обеспечением.

Также, широко используются технологии UTF-8, ASCII.

 Если в программе текст отображается в нечитабельной форме, пользователь может самостоятельно его декодировать. 

Для этого достаточно зайти в настройки текстового редактора и сохранить файл с кодировкой Юникод или другими популярными форматами кодирования.

Затем откройте файл заново, текст должен отображаться в нормальном режиме.

Рис.6 – декодирование текста в редакторе

вернуться к меню ↑

Часто возникает необходимость не только закодировать информацию, но и скрыть её содержимое от посторонних.

Для таких целей используется шифрование.

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

Алфавит шифрования состоит из двух элементов:

  •  Алгоритм – уникальная последовательность математических действий с двоичными числами; 

  •  Ключ – бинарная последовательность, которая добавляется к шифруемому сообщению. 

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

Криптография – это наука о шифровании данных. Всего различают два раздела криптографии:

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

Где используется криптография?

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

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

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

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

Также, алгоритмы шифрования встроены во все операционные системы, облачные хранилища.

Они нужны для защиты ваших личных данных.

Рис.7 – принцип работы защищенного соединения

вернуться к меню ↑

 Стеганография – это еще один способ кодирования информации.

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

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

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

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

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

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

Достаточно сопоставить картинку до и после встраивания секретного текста, количество пикселей будет отличаться.

Затем используется специальное ПО для перебора и расшифровки каждого пикселя и воссоздания сообщения.

вернуться к меню ↑

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

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

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

Тематические видеоролики:

Источник: http://geek-nose.com/kodirovanie-i-dekodirovanie-informacii/

Поделиться:
Нет комментариев

    Добавить комментарий

    Ваш e-mail не будет опубликован. Все поля обязательны для заполнения.