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

💖 Нравится? Поделись с друзьями ссылкой

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

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

Определение 1

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

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

Наиболее распространенными из которых являются:

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

Чаще всего кодированию подвергаются тексты на естественных языках (русском, английском и пр.).

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

Замечание 1

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

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

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

Декодирование информации

Определение 2

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

а) процесс придания определенного смысла полученным сигналам;

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

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

Модель кодирования/декодирования С. Холла

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

Замечание 2

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

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

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

Свою теорию С. Холл сформулировал, используя в качестве примера работу телевидения, но ее можно применить к любым видам средств массовой информации. Суть теории заключается в том, что медиасообщение, проходя на своем пути от источника до получателя, претерпевает ряд преобразований. В результате средства медиакоммуникации передают сообщения, конформные или оппозиционные по отношению к правящим властям, различным общественным, политическим и экономическим социальным институтам. Эти сообщения кодируются зачастую в форме устоявшихся содержательных жанров (к ним можно отнести новости политического, спортивного, экономического содержания; музыкальные передачи, сериалы и пр., в общем все то, что смотрят обыватели), имеющих очевидный содержательный смысл, актуализированную направленность и встроенные руководства для их интерпретации заинтересованной целевой аудиторией. Зрители же, в свою очередь, подходят к содержанию, предлагаемому СМИ, с другими «смысловыми структурами», которые строятся на их собственном здравом смысле, идеях и опыте.

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

Теория Холла содержит ряд принципиальных положений , это:

  • многообразие смыслов, заложенных в тексте;
  • первичность получателя в определении смысла;
  • наличие различных «интерпретативных» сообществ.

Таким образом, мы пришли к определению того, кто такой получатель.

Определение 3

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

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

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

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

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

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

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

Кодирование - это переход от одного алфавита (буквенного кода) к другому.

Пусть A = {а 1 ,а 2 ,...,а т) и В = {b l ,b 2 ,...,b n) - алфавиты.

Элементы алфавита называются буквами.

Последовательность букв некоторого алфавита называют словом в этом алфавите.

Л*, В* - множество слов в алфавите Ли В соответственно.

Кодированием будем называть функцию F: В* где S с А*.

S называется множеством сообщений.

Образы сообщений называют кодами , т. е. р е В *: (3 = F{ а),а е S.

Измерением кодирования является количество букв в алфавите В, т. е. это п-ичное кодирование.

Двоичное кодирование ^>В = 2,В = {0,1}.

Декодирование - это F~ { .

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

Свойства кодирования

  • 1. Существование декодирования (компиляция, трансляция программ не требует декодирования).
  • 2. Помехоустойчивость или исправление ошибок Ф" близок к коду Р) => (F -1 (р) = F~ l (р")).
  • 3. Сложность или простота кодирования и декодирования (криптографический алфавит: F - простая, a F~" сложная).

Алфавитное кодирование

Количество букв в слове называется длиной слова.

Пусть а = а. а, 2 ...д 4 - слово. |а| = к - длина слова а.

Пустое слово - слово нулевой длины. |л| = О, Л g А.

Пусть а = а,а 2 - слово, полученное склеиванием слов а (и а 2 .

Тогда а, - начало, префикс слова а, а 2 - окончание, постфикс слова а. Алфавитное (побуквенное) кодирование задается схемой а:Р, я 2 ->Р 2 , ..., >> где а к е Д р Л е 2Г.

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

V = {р А }” ч - элементарные коды.

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

Примеры

Л = {°,1,-,9} ^ = {0,1}

1. ст: 1,2 -> 10,3 -> 11,4 -? 100, ..., 9-> 1001 > - схема алфавитного кодирования.

/г(123) = 11011

Это кодирование не взаимнооднозначное, т. к. ДЗОЗ) = 11011, т. е. а, = 123 * а 2 = 303, но F(a,) = /’(a 2).

2. ст: 0000,1->0001,2->0010, ...,9 -> 1001 >.

Это двоично-десятичное кодирование. Эта схема является взаимнооднозначной. Следовательно, существует декодирование.

разделимой, если любое слово, составленное из элементарных кодов, единственным образом разделяется на элементарные коды.

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

Примеры (предыдущий)

1. Неразделимая схема кодирования (11 1/1 и 11);

не префиксная (элементарный код 1 является элементарным кодом 2).

2. Разделимая и префиксная.

Теорема

Любая префиксная схема является разделимой.

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

Тогда существует два разных представления одного слова: р. ...р^ = р У| ...р^ . Пусть Р,. * Р Л.

Тогда либо Р (. является началом слова р у. (р. р = Р у.), либо наоборот (р у. р = Р (.). Следовательно, схема не префиксная. Получили противоречие.

Обратное утверждение неверно!!!

Не любая разделимая схема является префиксной.

Достаточное условие разделимости (но не является необходимым): префиксная => разделимая.

Пример

А = {а,Ь) й = {0,1}

а:0, Z>->01> - не префиксная, разделимая.

Теорема (необходимое условие разделимости)

о:-^ Ь к >" =1 - разделимая, то выполняется неравенство:

Обратное неверно!!!

Теорема

Если для чисел /, ...,1 т выполняется неравенство то существует разделимая схема алфавитного кодирования о:Ь к >“ =1 , где В = {0,1}, такая, что

IPJ = К’ к= 1 ’ т

Пример

1. а:а -» 0,Ь -» 01 > - не префиксная, разделимая.

По теореме выполняется неравенство:

2. а:0,6-»1 > - разделимая, т. к.

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

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

Минимизация длины кода сообщения

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

Очевидно:

Если схема алфавитного кодирования о: разделимая, то и разделима любая схема а", полученная перестановкой набора элементарных кодов.

Если длины всех элементарных кодов равны, то перестановка элементарных кодов не изменит длину кода любого сообщения.

Если длины элементарных кодов различны, то длина кода сообщения зависит от состава букв в сообщении и от того, какие элементарные коды каким буквам назначены.

Пусть задан вектор p = (p i ,...,p m) распределения вероятностей букв в сообщении, причем р х > р 2 >...>р т >0 (упорядочены не по возрастанию).

Пусть дана схема алфавитного кодирования о: Ъ к >“ =1 . Определим для этой схемы математическое ожидание коэффициента увеличения длины сообщения, или среднюю длину кода одного символа:

которая называется средней ценой (длиной) алфавитного кодирования а для распределения вероятностей р.

Схема алфавитного кодирования, для которой длины всех элементарных кодов равны, называется равномерной.

Минимальная длина кода каждой буквы при условии разделимости при этом равна

Для равномерного кодирования средняя цена кодирования равна

L(p) - минимальная длина разделимой схемы алфавитного кодирования при распределении вероятностейр.

Среди схем алфавитного кодирования, средняя длина которых не превосходит конечное количество / 0 , существует схема с минимальной длиной а» (р), для которой /„.(/>) = inf/„(/>).

Такая схема а* (р) называется кодированием с минимальной избыточностью или оптимальным кодированием для распределения вероятности р.

Свойства оптимального кодирования

1. Пусть ст, - схема оптимального кодирования.

Тогда

Доказательство (от противного)

Пусть это свойство не выполняется, т. е. p t > Pj & |(3, | > |р у |).

а/ , полученная из а, перестановкой кодов (3,. и р у, т.е. а/ : a j -» р у; а } -» Р (..

Тогда

Получили противоречие с тем, что а, - схема оптимального кодирования.

2. Пусть а, - схема оптимального кодирования.

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

3. Пусть стГ 1 : ->р Л >"“/ - схема оптимального кодирования. р.Р>р 2 >...>р т _> 0, Pj = q x + q 2 , гдер т _ х >q x >q 2 > 0.

Тогда схема алфавитного кодирования

является оптимальной для распределения вероятностей

Самокорректирующиеся коды

Помехоустойчивый код

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

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

где S с A*, KgB А = В = {0,1}.

Виды ошибок:

  • 1. Ошибка замещения разряда: 0 -> 1; 1^0.
  • 2. Ошибка выпадения разряда: 0 -> Л; 1 -> Л.
  • 3. Ошибка вставки разряда: Л -» 0; Л ^ 1.

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

Рассмотрим канал связи с характеристикой. Возможна единичная ошибка замещения разряда в сообщении длины п.

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

Код с обнаружением ошибок

Нужно добавить бит четности - контрольная сумма:

а = а 1 а 2 ...а т - бит четности - сумма по модулю 2 всех остальных - контрольная сумма.

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

Код Хаффмана

Код Хаффмана является оптимальным кодированием.

Правила построения

Построение кода Хаффмана основано на сжатии алфавита.

Пусть есть алфавит А = {а х,а 2 ,...,а т) с вероятностями р х > р 2 >...> р т.

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

Переупорядочим буквы алфавита А х по не возрастанию вероятностей. Полученный алфавит снова подвергнем однократному сжатию. Получим алфавит А 2:А 2 = т-2 и т. д., сжимаем до алфавита А т _ 2 :|Д т _ 2 | = 2. Двум буквам этого алфавита приписываем коды 0 и 1.

Пусть определены коды всех букв алфавита А } _ х, определим коды букв алфавита Aj_ 2 .

Буквы алфавита Aj_ 2 , которые входят в алфавит А у._ х , имеют тот же код.

Пусть буквы а" и а" при сжатии объединяются в одну букву Ь, имеющую код р и вероятность р(я")> р(я").

Тогда а" р0 , а" -> pi.

Следовательно, А т _ 2 ,...,А.

Таким образом, начиная с А т _ 2 , строится код исходного алфавита А По построению этот код будет префиксным и, следовательно, разделимым. Набор кодов {0,1} является оптимальным для алфавита из двух букв А т _ 2 . На каждом шаге из оптимальной схемы кодирования снова строится оптимальная схема кодирования, и полученный код является оптимальным.

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

Пример

Построить схему оптимального кодирования для алфавита с распределением вероятностей /? = (0,2;0,2;0,19;0,12;0,11;0,09;0,09) (вероятности не возрастают). Решение

  • 1. Выписываем вероятности в порядке убывания в первый столбец таблицы.
  • 2. Складываем две последние вероятности: 0,09 + 0,09 = 0,18.
  • 3. Упорядочиваем оставшиеся вероятности в порядке убывания и записываем результат в третий столбец.
  • 4. Опять складываем две последние вероятности и, упорядочивая, записываем в пятый столбец и т. д., пока не останется всего два числа: 0,6 и 0,4, которые в сумме дают единицу.
  • 5. Верхнему числу присваиваем код «0», нижнему - «1».
  • 6. Теперь двигаемся справа налево: тем числам, которые присутствуют, присваиваем тот же самый код (0,4 - «1»), а тем, которые в сумме дают число 0,6, присваиваем коды «00» (верхнему) и «01» (нижнему).
  • 7. Аналогично доходим до самого первого столбика и формируем коды для всех элементов вектора р (см. табл. 11).

Таблица 11

Ответ: а 2 -»11; а 3 000; я 4 -» 010; а 5 -> 011; я 6 0010; я 7 -> 0011 >. Оптимальная длина кодирования:

/.=0,2-2 + 0,2-2 + 0,19-3 + 0,12-3 + 0,11-3 + 0,09-4 + 0,09-4 = 2,78 / 0 = 3 - длина равномерного кодирования

Код Фано

При кодировании по Фано все сообщения записываются в таблицу по степени убывания вероятности и разбиваются на две группы примерно (насколько это возможно) равной вероятности. Соответственно этой процедуре из корня кодового дерева исходят два ребра, которым в качестве весов присваиваются полученные вероятности. Двум образовавшимся вершинам приписываются кодовые символы 0 и 1. Затем каждая из групп вероятностей вновь делится на две подгруппы примерно равной вероятности. В соответствии с этим из каждой вершины 0 и 1 исходят по два ребра с весами, равными вероятностям подгрупп, а вновь образованным вершинам приписывают символы 00 и 01, 10 и 11.

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

Пример (табличный способ)

Построить схему оптимального кодирования для алфавита с распределением вероятностей р = (0,2; 0,2; 0,19; 0,12; 0,11; 0,09; 0,09) (вероятности не возрастают). Решение

Смысл: выделяем две группы в зависимости от разности суммы, которая должна быть минимальной. Верхней группе чисел присваиваем «0», а нижней «1». Алгоритм:

  • 1. Посчитать суммы сверху и суммы снизу (см. табл. 12).
  • 2. Найти модуль разности сумм сверху и сумм снизу:

3. Выбрать наименьший модуль разности:

|0,59-0,41| = 0,18

  • 4. Разбить группу на две подгруппы: получается, что в первую подгруппу входят первые три элемента, а во вторую - все остальные.
  • 5. Присваиваем верхним трем элементам коды «О», а остальным нижним коды «1».
  • 6. Теперь разбиваем первую подгруппу, состоящую из трех элементов, на две подгруппы (см. пункты 1-4):

Таблица 12

Сумма сверху

Сумма снизу

|0,2 - 0,39| = 0,19 - наименьший модуль разности |0,4 - 0,19| = 0,21

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

7. Присваиваем код первой подгруппе, т. е. одному элементу - «00» (это итоговый код первого элемента), а второй подгруппе, состоящей из двух элементов, код «01». Когда группа состоит из двух элементов, то можно сразу присвоить итоговые коды: «010» и «011».

Аналогично разбиваем вторую подгруппу и получаем итоговые коды.

Таблица 13

Сумма сверху

Сумма снизу

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


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

Что означает понятие «кодирование»?

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

Что означает понятие «декодирование»?

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

Как выполняется процесс кодирования?

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

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

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

Как происходит декодирование?

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

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

Виды кодов

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

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

За правильное выполненное задание получишь 1 балл . На решение отводится примерно 2 минуты .

Для выполнения задания 5 по информатике необходимо знать:

Кодирование - это перевод информации из одной формы представления в другую.

Декодирование - это обратный процесс кодированию.

Кодирование бывает равномерное и неравномерное ;

  • при равномерном кодировании все символы кодируются кодами равной длины; Например : ASCII или Unicode.
  • при неравномерном кодировании разные символы могут кодироваться кодами разной длины, это затрудняет декодирование, связанные с появлением неоднозначности кода. Например : Символ А кодируется цифрой 0, Б - последовательностью 01, а В - последовательностью 1. Итак, например, сообщение "011" может быть раскодировано, как AВВ или БВ. При неоднозначность кода информацию можно декодировать по разному.

Для однозначного декодирования код должен удовлетворять условию Фано : никакое кодовое слово не может быть началом другого кодового слова.

Задачи для тренировки

    По каналу связи передаются шифрованные сообщения, содержащие только десять букв: А, Б, Е, И, К, Л, Р, С, Т, У. Для передачи используется неравномерный двоичный код. Для девяти букв используются кодовые слова.

    Буква Кодовое слово Буква Кодовое слово
    А 00 Л 1101
    Б Р 1010
    Е 010 С 1110
    И 011 Т 1011
    К 1111 У 100

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


    Решение
  1. В сообщении встречается 4 разных букв. При его передаче использован неравномерный двоичный префиксный код. Известны коды двух букв: 101, 01. Коды остальных двух букв имеют одинаковую длину. Какова минимальная суммарная длина всех 4-х кодовых слов?


    Решение
  2. По каналу связи передаются сообщения, содержащие только пять букв: Д,О,С,К,А; для передачи используется двоичный код, допускающий однозначное декодирование. Для букв Д,О,С используются такие кодовые слова: Д: 1, О: 01, С: 0001. Укажите кратчайшую сумму длин кодовых слов для букв К,А при котором код будет допускать однозначное декодирование.


    Решение
  3. В сообщении встречается 9 разных букв. При его передаче использован неравномерный двоичный код, допускающий однозначное декодирование. Известны коды трёх букв: 100, 001,01. Какова минимальная суммарная длина всех 9-ти кодовых слов?


    Решение
  4. По каналу связи передаются шифрованные сообщения, содержащие только десять букв: А, Б, В, Г, Д, Ж, З, Е, И, Л. Для передачи используется неравномерный двоичный код. Для семи букв используются кодовые слова.

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


    Решение
  5. По каналу связи передаются шифрованные сообщения, содержащие только десять букв: А, Б, В, Г, Д, Ж, З, Е, И, Л. Для передачи используется неравномерный двоичный код. Для восьми букв используются кодовые слова.

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


    Решение
  6. По каналу связи передаются шифрованные сообщения, содержащие только десять букв: А, Б, В, Г, Д, Ж, З, Е, И, Л. Для передачи используется неравномерный двоичный код. Для пяти букв используются кодовые слова.

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

А9 Тема : Кодирование и декодирование информации.

Что нужно знать :

· кодирование – это перевод информации с одного языка на другой (запись в другой системе символов,
в другом алфавите)

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

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

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

· закодированное сообщение можно однозначно декодировать с начала , если выполняется условие Фано : никакое кодовое слово не является началом другого кодового слова;

· закодированное сообщение можно однозначно декодировать с конца , если выполняется обратное условие Фано : никакое кодовое слово не является окончанием другого кодового слова;

· условие Фано – это достаточное, но не необходимое условие однозначного декодирования.

Пример задания

По каналу связи передаются сообщения, содержащие только 4 буквы: Е, Н, О, Т. Для кодирования букв Е, Н, О используются 5-битовые кодовые слова: Е - 00000, Н - 00111, О - 11011. Для этого набора кодовых слов выполнено такое свойство: любые два слова из набора отличаются не менее чем в трёх позициях. Это свойство важно для расшифровки сообщений при наличии помех. Какое из перечисленных ниже кодовых слов можно использовать для буквы Т, чтобы указанное свойство выполнялось для всех
четырёх кодовых слов?

1) 1100не подходит ни одно из указанных выше слов

Решение :

1) код, рассмотренный в условии задачи, относится к помехоустойчивым кодам, которые позволяют обнаружить и исправить определенное количество ошибок, вызванных помехами при передаче данных;

1) количество позиций, в которых отличаются два кодовых слова одинаковой длины, называется расстоянием Хэмминга

2) код, в котором расстояние Хэмминга между каждой парой кодовых слов равно d , позволяет обнаружить до d -1 ошибок; для исправления r ошибок требуется выполнение условия

d ≥ 2r + 1

поэтому код с d = 3 позволяет обнаружить одну или две ошибки, и исправить одну ошибку.

3) легко проверить, что для заданного кода (Е - 00000, Н - 00111, О - 11011) расстояние Хэмминга равно 3; в таблице выделены отличающиеся биты, их по три в парах Е-Н и Н-О и четыре
в паре Е-О:

Е – 00000 Е – 00000 Н – 00111

Н – 00111 О – 11011 О – 11011

4) теперь проверяем расстояние между известными кодами и вариантами ответа; для первого ответа 11111 получаем минимальное расстояние 1 (в паре О-Т), этот вариант не подходит:

Т - 11111 Т - 11111 Т - 11111

5) для второго ответа 11100 получаем минимальное расстояние 3 (в парах Е-Т и О-Т):

Е – 00000 Н – 00111 О – 11011

Т - 11100 Т - 11100 Т - 11100

6) для третьего ответа 00011 получаем минимальное расстояние 1 (в паре Н-Т) , этот вариант не подходит:

Е – 00000 Н – 00111 О – 11011

Т - 00011 Т - 00011 Т - 00011

7) таким образом, расстояние Хэмминга, равное 3, сохраняется только для ответа 2 Ответ: 2.

Ещё пример задания:

Для кодирования некоторой последовательности, состоящей из букв А, Б, В, Г и Д, используется неравномерный двоичный код, позволяющий однозначно декодировать полученную двоичную последовательность. Вот этот код: А–00, Б–010, В–011, Г–101, Д–111. Можно ли сократить для одной из букв длину кодового слова так, чтобы код по-прежнему можно было декодировать однозначно? Коды остальных букв меняться не должны. Выберите правильный вариант ответа.

1) для буквы Б –это невозможно

3) для буквы В –для буквы Г – 01

Решение (1 способ, проверка условий Фано) :

8) для однозначного декодирования достаточно, чтобы выполнялось условие Фано или обратное условие Фано;

9) проверяем последовательно варианты 1, 3 и 4; если ни один из них не подойдет, придется выбрать вариант 2 («это невозможно»);

10) проверяем вариант 1: А–00, Б–01, В–011, Г–101, Д–111.

« (код буквы Б совпадает с началом кода буквы В);

«обратное» условие Фано не выполняется (код буквы Б совпадает с окончанием кода буквы Г); поэтому этот вариант не подходит;

11) проверяем вариант 3: А–00, Б–010, В–01, Г–101, Д–111.

«прямое» условие Фано не выполняется (код буквы В совпадает с началом кода буквы Б);

«обратное» условие Фано не выполняется (код буквы В совпадает с окончанием кода буквы Г); поэтому этот вариант не подходит;

12) проверяем вариант 4: А–00, Б–010, В–011, Г–01, Д–111.

«прямое» условие Фано не выполняется (код буквы Г совпадает с началом кодов букв Б и В);
но «обратное» условие Фано выполняется (код буквы Г не совпадает с окончанием кодов остальных буквы); поэтому этот вариант подходит; правильный ответ – 4.

Пример задания: демо_12

Для кодирования некоторой последовательности, состоящей из букв А, Б, В, Г и Д, решили использовать неравномерный двоичный код, позволяющий однозначно декодировать двоичную последовательность, появляющуюся на приёмной стороне канала связи. Использовали код: А–1, Б–000, В–001, Г–011 .
Укажите, каким кодовым словом должна быть закодирована буква Д. Длина этого кодового слова должна быть наименьшей из всех возможных. Код должен удовлетворять свойству однозначного декодирования.

Решение :

13) заметим, что для известной части кода выполняется условие Фано – никакое кодовое слово не является началом другого кодового слова

14) если Д = 00, такая кодовая цепочка совпадает с началом Б = 000 и В = 001 000000: это может быть ДДД или ББ ; поэтому первый вариант не подходит

15) если Д = 01 , такая кодовая цепочка совпадает с началом Г = 011 , невозможно однозначно раскодировать цепочку 011: это может быть ДА или Г ; поэтому второй вариант тоже не подходит

16) если Д = 11 , условие Фано тоже нарушено: кодовое слово А = 1 совпадает с началом кода буквы Д, невозможно однозначно раскодировать цепочку 111: это может быть ДА или ААА ; третий вариант
не подходит

17) для четвертого варианта, Д = 010, условие Фано не нарушено; правильный ответ 4 .

Еще пример задания:

Для передачи по каналу связи сообщения, состоящего только из букв А, Б, В, Г, решили использовать неравномерный по длине код: A=0, Б=10, В=110. Как нужно закодировать
букву Г, чтобы длина кода была минимальной и допускалось однозначное разбиение кодированного сообщения на буквы?

Решение (вариант 1, метод подбора) :

1) рассмотрим все варианты в порядке увеличения длины кода буквы Г

2) начнем с Г=1; при этом получается, что сообщение «10» может быть раскодировано двояко:
как ГА или Б, поэтому этот вариант не подходит

3) следующий по длине вариант Г=11 ; в этом случае сообщение «110» может быть раскодировано
как ГА или В, поэтому этот вариант тоже не подходит 4)третий вариант, Г=111 , дает однозначное раскодирование во всех сочетаниях букв, поэтому… ответ – 3.

Еще пример задания:

Для кодирования букв А, Б, В, Г решили использовать двухразрядные последовательные двоичные числа (от 00 до 11, соответственно). Если таким способом закодировать последовательность символов БАВГ и записать результат шестнадцатеричным кодом, то получится

Решение :

18) из условия коды букв такие: A – 00, Б –01, В – 10 и Г – 11, код равномерный

19) последовательность БАВГ кодируется так:= 1001011

20) разобьем такую запись на тетрады справа налево и каждую тетраду переведем в шестнадцатеричную систему (то есть, сначала в десятичную, а потом заменим все числа от 10 до 15 на буквы A, B, C, D, E, F); получаем 1001011 = 0 = 4B16 Правильный ответ – 1.

Еще пример задания:

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

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

1) BD9AA5 2) BDA9B5 3) BDA9D5 4) DB9DAB

Решение :

1) «вытянем» растровое изображение в цепочку: сначала первая (верхняя) строка, потом – вторая, и т. д.:

1 строка

2 строка

3 строка

4 строка

2) в этой полоске 24 ячейки, черные заполним единицами, а белые – нулями:

1

1

1

1

1

1

1

1

1

1

1 строка

2 строка

3 строка

4 строка

3) поскольку каждая цифра в шестнадцатеричной системе раскладывается ровно в 4 двоичных цифры, разобьем полоску на тетрады – группы из четырех ячеек (в данном случае все равно, откуда начинать разбивку, поскольку в полоске целое число тетрад – 6):

1

1

1

1

1

1

1

1

1

1

4) переводя тетрады в шестнадцатеричную систему, получаем последовательно цифры B (11), D(13), A(10), 9, D(13) и 5, то есть, цепочку BDA9 D5 Правильный ответ – 3.

Еще пример задания:

Для передачи чисел по каналу с помехами используется код проверки четности. Каждая его цифра записывается в двоичном представлении, с добавлением ведущих нулей до длины 4, и к получившейся последовательности дописывается сумма её элементов по модулю 2 (например, если передаём 23 , то получим последовательность 0010 1 00110 ). Определите, какое число передавалось по каналу в виде 0100011 ?

Решение :

1) сначала разберемся, как закодированы числа в примере; очевидно, что используется код равномерной длины; поскольку 2 знака кодируются 10 двоичными разрядами (битами), на каждую цифру отводится 5 бит, то есть 2 → 00101 и 3 → 00110

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

2 = 00102, бит четности (0 + 0 + 1 + 0) mod 2 = 1

3 = 00112, бит четности (0 + 0 + 1 + 1) mod 2 = 0

3) но бит четности нам совсем не нужен , важно другое: пятый бит в каждой пятерке можно отбросить !

4) разобъем заданную последовательность на группы по 5 бит в каждой:

01010, 10010, 01111, 00011.

5) отбросим пятый (последний) бит в каждой группе: 0101, 1001, 0111, 0001.
это и есть двоичные коды передаваемых чисел: 01012 = 5, 10012 = 9, 01112 = 7, 00012 = 1.

6) таким образом, были переданы числа 5, 9, 7, 1 или число 5971.

7) Ответ: 2.

А9 Задачи для тренировки.

№ 69 – 71

69) По каналу связи передаются сообщения, содержащие только 4 буквы: А, Б, В, Г. Для кодирования букв А, Б, В используются 5-битовые кодовые слова: А - 10000, Б - 00101, В - 01010. Для этого набора кодовых слов выполнено такое свойство: любые два слова из набора отличаются не менее чем в трёх позициях. Это свойство важно для расшифровки сообщений при наличии помех. Какое из перечисленных ниже кодовых слов можно использовать для буквы Г, чтобы указанное свойство выполнялось для всех четырёх кодовых слов?

1) 0110не подходит ни одно из указанных выше слов

70) (http://ege. *****) Для передачи помехоустойчивых сообщений в алфавите, который содержит 16 различных символов, используется равномерный двоичный код. Этот код удовлетворяет следующему свойству: в любом кодовом слове содержится четное количество единиц (возможно, ни одной). Какую наименьшую длину может иметь кодовое слово?

71) По каналу связи передаются сообщения, содержащие только 5 букв А, И, К, О, Т. Для кодирования букв используется неравномерный двоичный код с такими кодовыми словами:

А-0, И-00, К-10, О-110, Т-111.

Среди приведённых ниже слов укажите такое, код которого можно декодировать только одним способом. Если таких слов несколько, укажите первое по алфавиту.

1) КАА 2) ИКОТА 3) КОТ 4) ни одно из сообщений не подходит

1. Для кодирования букв А, Б, В, Г решили использовать двухразрядные последовательные двоичные числа (от 00 до 11 соответственно). Если таким способом закодировать последовательность символов ГБВА и записать результат шестнадцатеричным кодом, то получится:

1) 13DBCA16 3) D

2. Для 5 букв латинского алфавита заданы их двоичные коды (для некоторых букв - из двух
бит, для некоторых - из трех). Эти коды представлены в таблице:

Определите, какой набор букв закодирован двоичной строкой

1) baade 2) badde 3) bacde 4) bacdb

3. Для кодирования сообщения, состоящего только из букв A, B, C, D и E, используется
неравномерный по длине двоичный код:

Какое (только одно!) из четырех полученных сообщений было передано без ошибок
и может быть раскодировано:

4. Для передачи по каналу связи сообщения, состоящего только из букв А, Б, В, Г, решили использовать неравномерный по длине код: A=0, Б=100, В=101. Как нужно закодировать букву Г, чтобы длина кода была минимальной и допускалось однозначное разбиение кодированного сообщения на буквы?

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

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

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

7. Для кодирования букв О, Ч, Б, А, К используются двоичные коды чисел 0, 1, 2, 3 и 4 соответственно (с сохранением одного незначащего нуля в случае одноразрядного представления). Если таким способом закодировать последовательность символов
КАБАЧОК и записать результат в шестнадцатеричном коде, то получится:

1) 5434DA4 3) ABCD

8. Для передачи по каналу связи сообщения, состоящего только из букв А, Б, В, Г, решили использовать неравномерный по длине код: A=01, Б=1, В=001. Как нужно закодировать
букву Г, чтобы длина кода была минимальной и допускалось однозначное разбиение кодированного сообщения на буквы?

9. Для передачи по каналу связи сообщения, состоящего только из букв А, Б, В, Г, решили использовать неравномерный по длине код: A=0, Б=100, В=110. Как нужно закодировать букву Г, чтобы длина кода была минимальной и допускалось однозначное разбиение кодированного сообщения на буквы?



Рассказать друзьям