Р. Хартли предложил в качестве меры неопределенности логарифм от числа возможностей, т.е. процесс получения информации рассматривает как выбор одного сообщения из конечного наперёд заданного множества из N равновероятных сообщений, а количество информации I, содержащееся в выбранном сообщении, определяет как двоичный логарифм N:
- формула Хартли.Обычно количество информации представляется в виде:
, где m - число возможных выборов. Тогда стандартной единицей количества информации будет выбор из двух возможностей. Такая единица получила наименование бит и представляется одним символом двоичного алфавита: 0 или 1.Пример: нужно угадать одно число из набора чисел от единицы до ста. По формуле Хартли можно вычислить, какое количество информации для этого требуется:
.Т. е. сообщение о верно угаданном числе содержит количество информации, приблизительно равное 6,644 единиц информации.Другие примеры равновероятных сообщений: при бросании монеты: "выпала решка", "выпал орел"; на странице книги: "количество букв чётное", "количество букв нечётное".
В некоторых случаях, когда однозначно нельзя ответить на вопросы распределения вероятности, для определения количества информации уже нельзя использовать формулу Хартли.
Пример: являются ли равновероятными сообщения "первой выйдет из дверей здания женщина" и "первым выйдет из дверей здания мужчина". Однозначно ответить на этот вопрос нельзя. Все зависит от того, о каком именно здании идет речь.
Для задач такого рода американский учёный Клод Шеннон предложил в 1948 г. другую формулу определения количества информации, учитывающую возможную неодинаковую вероятность сообщений в наборе.
Формула Шеннона:
,где рi - вероятность того, что именно i-е сообщение выделено в наборе из N сообщений.
Если вероятности
равны, то каждая из них равна 1/N, и формула Шеннона превращается в формулу Хартли.Кодирование информации - это процесс формирования определенного представления информации [3].
В более узком смысле под термином кодирование часто понимают переход от одной формы представления информации к другой, более удобной для хранения, передачи или обработки.
Компьютер может обрабатывать только информацию, представленную в числовой форме. Вся другая информация (звуки, изображения, показания приборов и т.д.) для обработки на компьютере должна быть преобразована в числовую форму. Чтобы перевести в числовую форму музыкальный звук, можно через небольшие промежутки времени измерять интенсивность звука на определенных частотах, представляя результаты каждого измерения в числовой форме. Аналогичным образом можно обрабатывать текстовую информацию. При вводе в компьютер каждая буква кодируется определенным числом, при выводе на внешние устройства для восприятия человеком по этим числам строятся изображения букв. Соответствие между набором букв и числами называется кодировкой символов.
Одну и ту же информацию можно выразить разными способами. Например, каким образом вы можете сообщить об опасности?
Если на вас напали, вы просто можете крикнуть: «Караул!!! »
Если прибор находится под высоким напряжением, то требуется оставить предупреждающий знак;
На оживленном перекрестке регулировщик помогает избежать аварии с помощью жестов.
В театре пантомимы вся информация передается только с помощью мимики и жестов.
Если ваш корабль тонет, то вы передаете сигнал «SOS».
На флоте используют семафорную и флажковую сигнализацию.
В каждом из этих примеров мы должны знать правила, по которым можно отобразить информацию об опасности тем или иным способом.
Правила, по которым можно отобразить информацию тем или иным способом, называются кодом.
Обычно каждый образ при кодировании представлен отдельным знаком.
Знак – это элемент конечного множества, отличных друг от друга элементов. Знак вместе его смыслом называется символом. Набор знаков, в котором определен их порядок, называется алфавитом. Мощность алфавита - количество используемых в нем символов.
Существует множество алфавитов: алфавит кириллических букв (А, Б, В, Г, Д, …); алфавит латинских букв (A, B, C, D, …); алфавит десятичных цифр (1, 2, 3, 4,…,9, 0); алфавит знаков зодиака и др.
Имеются, однако, наборы знаков, для которых нет какого-то общепринятого порядка: набор знаков азбуки Брайля (для слепых); набор китайских иероглифов; набор знаков планет; набор знаков генетического кода.
Особенно важное значение имеют наборы, состоящие всего из двух знаков: пара знаков (+, -); пара знаков «точка», « тире»; пара цифр (0, 1); пара ответов (да, нет).
Наборы знаков, состоящие из 2 символов, называют двоичными - двоичный алфавит (0, 1), двоичный знак получил название БИТ. С появлением электрического телеграфа возникли важнейшие технические коды: азбука МОРЗЕ; набор знаков второго международного телеграфного кода (телекс).
Код используется для представления информации в виде, удобном для хранения и передачи.
Например, для того чтобы закодировать ряд чисел от 0 до 100, во-первых, нужно выбрать какой-то алфавит. Если для каждого числа придумать символ, который будет его обозначать, то потребуется 101 символ. А если чисел будет больше, то данный подход нерационален. Если каждое число представить (закодировать) не одним, а несколькими знаками из нашего алфавита, то в нашем правиле появится понятие длина кода.
Длиной кода – это такое количество знаков, которое используется при кодировании для представления символа. Количество символов в алфавите и длина кода – совершенно разные вещи. Например, в русском алфавите 33 буквы, а слова могут быть длиной в 1, 2, 3 и т.д. буквы.
Коды бывают постоянной и переменной длины. Коды переменной длины применяются в технике довольно редко. Исключением лишь является код МОРЗЕ. Азбука МОРЗЕ – это троичный код с набором знаков: точка, тире, пауза. Паузу необходимо использовать в качестве разделителя между буквами и словами, так как длина кода непостоянна. Если бы длина кода была постоянной, то расположение символов можно было устанавливать при помощи отсчета. В этом случае пауза не нужна. Сообщение будет раскодировано однозначно.
Применение кодов с постоянной длиной позволяет использовать для кодирования всего лишь два знака (двоичный код). Чем меньше букв в алфавите, тем должно быть проще устройство для раскодирования (расшифровки) информационного сообщения. Чем меньше букв в алфавите, тем больше должна быть длина кода.
В процессе развития человеческого общества люди выработали большое число языков кодирования: разговорные языки (русский, английский, хинди и др.); язык мимики и жестов; язык рисунков и чертежей; язык науки (математические, химические и другие символы); язык искусства (музыки, живописи, скульптуры и др.); специальные языки (эсперанто, морской семафор, азбука Морзе, азбука Брайля для слепых и др.); языки программирования (Бейсик, Паскаль, Фортран, Си и др.).
Программирование – это кодирование информации на языке, «понятном» компьютеру.
В компьютерах используется двоичная форма представления данных. Троичное кодирование, несмотря на ряд технических попыток, успеха не имело. Четверичное кодирование в криптографических целях (криптография – тайнопись) использовалось еще в XV веке. Передача сообщения всегда осуществляется во времени. Кодирование требует определенного количества времени, которым зачастую нельзя пренебрегать. При кодировании могут ставиться определенные цели и применяться различные методы.
Наиболее распространенные цели кодирования:
экономность (уменьшение избыточности сообщения, повышение скорости передачи или обработки информации);
надежность (защита от случайных искажений);
сохранность (защита от нежелательного доступа к информации);
удобство физической реализации (двойное кодирование информации в компьютере);
удобство восприятия (схемы, таблицы).
В современных компьютерах используется двоичная форма представления данных, содержащая всего две цифры – 0 и 1. Такая форма позволяет создать достаточно простые технические устройства для представления (кодирования) и распознавания (дешифровки) информации. Двоичное кодирование выбрали потому, чтобы максимально упростить конструкцию декодирующей машины, ведь дешифратор должен уметь различать всего два состояния – 0 и 1. Например, 1 - есть ток в цепи, 0 – нет тока в цепи. По этой причине двоичная система и нашла такое широкое распространение.
Современный компьютер может обрабатывать числовую, текстовую, графическую, звуковую и видео информацию. Все эти виды информации в компьютере представлены в двоичном коде, т.е. используется алфавит мощностью два (всего два символа 0 и 1). Такое кодирование принято называть двоичным, а сами логические последовательности нулей и единиц - машинным языком.
Вид информации | Двоичный код |
Числовая | 10110011 |
Текстовая | |
Графическая | |
Звуковая | |
Видео |
Каждая цифра машинного двоичного кода несет количество информации равное одному биту. Данный вывод можно сделать, рассматривая цифры машинного алфавита, как равновероятные события. При записи двоичной цифры можно реализовать выбор только одного из двух возможных состояний, а, значит, она несет количество информации равное 1 бит. Следовательно, две цифры несут информацию 2 бита, четыре разряда - 4 бита и т.д. Чтобы определить количество информации в битах, достаточно определить количество цифр в двоичном машинном коде.