Реферат: Информационные процессы, кодирование и сбор информации
• могли быть закодированы два числа — 1, 9;
• могли быть закодированы два числа — 8, 0.
Все три решения справедливы. Как вы думаете, почему? Есть ли способ, который приведет нас к однозначному решению поставленной задачи?
Коды переменной (непостоянной) длины в технике встречаются довольно редко. Исключением является лишь код Морзе.
Пример . Взгляните на международную азбуку Морзе:
Для отправителя приведенная таблица выглядит вполне логично, ибо буквы в ней расположены в алфавитном порядке. Но для человека, получающего сообщения, она неудобна.
В каком же порядке следует расположить знак азбуки Морзе, чтобы получив сигнал, мы могли, не теряя времени, определить, какой букве он соответствует. Представим азбуку Морзе в виде дерева:
При получении сигнала — это либо точка, либо тире — записываем букву и спускаемся по дереву: если точка — влево от текущей вершины, если тире — вправо, если пауза — записываем букву текущей вершины, если длинная пауза — записываем букву и отмечаем конец слова.
По общепринятому правилу радистов продолжительность передачи точки равна продолжительности паузы, продолжительность передачи тире равна продолжительности передачи трех точек, продолжительность передачи пропуска (между буквами) равна продолжительности трех пауз.
Азбука Морзе — это пример троичного кода с набором знаков «точка», «тире», «пауза». Паузу в качестве разделителя между буквами и словами необходимо использовать, так как длина кода непостоянна.
В кодах с постоянной длиной закодированные символы могут следовать друг за другом непосредственно, без всяких разделителей. Местоположение этих символов устанавливается с помощью отсчета. И таким образом сообщение может быть раскодировано однозначно.
Наиболее простым для кодирования является двоичный алфавит. Чем меньше знаков в алфавите, тем проще должна быть устроена «машина» для распознавания (дешифровки) информационного сообщения. Однако чем меньше знаков в алфавите, тем большее их количество (большая длина кода) требуется для кодирования информации.
Вернемся к примеру с кодированием чисел. Будем использовать для представления (кодирования) чисел от 0 до 100 алфавит и код постоянной длины. Какова должна быть длина кода?
В случае, когда длина кода равна п, с помощью алфавита, состоящего из 3 знаков, можно закодировать 3n различных состояний (чисел, букв, комбинаций). Приведем одно из возможных объяснений. В каждой из п позиций может стоять один из 3-х знаков алфавита. Для первой позиции существует 3 возможности. Для каждой из этих возможностей рассмотрим 3 возможности для второй позиции — всего будем иметь 3*3 = 9 возможностей. Рассуждая далее аналогично для остальных позиций, получим возможностей (комбинаций, состояний) расположения 3-х знаков в п позициях. Знаками двоичного алфавита можно закодировать 2n различных состояний; если имеется алфавит, состоящий из k знаков, то можно закодировать kn различных состояний.
Итак, если алфавит состоит из k знаков и используется код с постоянной длиной п, то можно закодировать различных состояний.
Пример .
Определим, какой длины должен быть код, чтобы, используя разные алфавиты, закодировать 10, 33, 100, 200, 1000 различных символов.
Проанализируйте таблицу:
Итак, для кодирования М различных символов кодом постоянной длины с помощью алфавита из k знаков, требуется длина кода (с учетом того, что длина кода — это целое число), равная
В вычислительной технике для кодирования информации используется двоичный алфавит {0,1}. Это позволяет использовать достаточно простые устройства для представления и автоматического распознавания (дешифровки, декодирования) программ и данных. Конструкция декодирующего устройства максимально упрощается, ведь оно должно уметь различать всего два состояния (например, 1 — есть ток в цепи, 0 — тока в цепи нет). По этой причине двоичная система и нашла такое широкое применение.
В вычислительной технике в настоящее время широко используется двоичное кодирование с алфавитом {0,1}. Наиболее распространенными кодами являются ASCII (Americanstandardcodeforinformationinterchange — американский стандартный код для обмена информацией), ДКОИ-8, Win1251.
Передача сообщений всегда осуществляется во времени. Процесс кодирования также требует определенного количества времени, которым зачастую нельзя пренебрегать. При кодировании могут ставиться определенные цели и применяться различные методы. Наиболее распространенные цели кодирования:
• экономность (уменьшение избыточности сообщения, повышение скорости передачи или обработки);
• надежность (защита от случайных искажений);
• сохранность (защита от нежелательного доступа к информации);