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

28.04.2019

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

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

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

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

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

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

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

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

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

6. Основные понятия темы «Информация и управление»: числовое и символьное кодирование информации

Кодирование числовой информации.

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

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

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

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

10 цифр, 12 знаков препинания, 15 знаков арифметических действий, буквы русского и латинского алфавита, ВСЕГО: 155 символов, что соответствует 8 бит информации.

Единицы измерения информации.

1 байт = 8 бит

1 Кбайт = 1024 байтам

1 Мбайт = 1024 Кбайтам

1 Гбайт = 1024 Мбайтам

1 Тбайт = 1024 Гбайтам

Суть кодирования заключается в том, что каждому символу ставят в соответствие двоичный код от 00000000 до 11111111 или соответствующий ему десятичный код от 0 до 255.

Необходимо помнить, что в настоящее время для кодировки русских букв используют пять различных кодовых таблиц (КОИ - 8, СР1251, СР866, Мас, ISO), причем тексты, закодированные при помощи одной таблицы не будут правильно отображаться в другой

Основным отображением кодирования символов является код ASCII - American Standard Code for Information Interchange- американский стандартный код обмена информацией, который представляет из себя таблицу 16 на 16, где символы закодированы в шестнадцатеричной системе счисления.

одирование символьной (текстовой) информации.

Основная операция, производимая над отдельными символами текста - сравнение символов.

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

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

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

Наиболее популярные таблицы перекодировки: ДКОИ-8, ASCII, CP1251, Unicode.

Исторически сложилось, что в качестве длины кода для кодирования символов было выбрано 8 бит или 1 байт. Поэтому чаще всего одному символу текста, хранимому в компьютере, соответствует один байт памяти.

Различных комбинаций из 0 и 1 при длине кода 8 бит может быть 28 = 256, поэтому с помощью одной таблицы перекодировки можно закодировать не более 256 символов. При длине кода в 2 байта (16 бит) можно закодировать 65536 символов.

7.Основные понятия темы «Информация и управление»: графическое кодирование информации.

Кодирование графической информации.

Важным этапом кодирования графического изображения является разбиение его на дискретные элементы (дискретизация).

Основными способами представления графики для ее хранения и обработки с помощью компьютера являются растровые и векторные изображения

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

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

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

Pixel (picture element - элемент рисунка) - минимальная единица изображения, цвет и яркость которой можно задать независимо от остального изображения.

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

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

Для черно-белого изображения код цвета каждого пикселя задается одним битом.

Если рисунок цветной, то для каждой точки задается двоичный код ее цвета.

Поскольку и цвета кодируются в двоичном коде, то если, например, вы хотите использовать 16-цветный рисунок, то для кодирования каждого пикселя вам потребуется 4 бита (16=24), а если есть возможность использовать 16 бит (2 байта) для кодирования цвета одного пикселя, то вы можете передать тогда 216 = 65536 различных цветов. Использование трех байтов (24 битов) для кодирования цвета одной точки позволяет отразить 16777216 (или около 17 миллионов) различных оттенков цвета - так называемый режим “истинного цвета” (True Color). Заметим, что это используемые в настоящее время, но далеко не предельные возможности современных компьютеров.

8 Основные понятия темы «Информация и управление»: алфавит, код

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

Мощность алфавита - количество символов алфавита.
Двоичный алфавит содержит 2 символа, его мощность равна двум.
Сообщения, записанные с помощью символов ASCII, используют алфавит из 256 символов. Сообщения, записанные по системе UNICODE, используют алфавит из 65 536 символов.

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

9 Основные понятия измерения информации: бит, байт, килобайт, мегабайт

Бит, Байт, Килобайт, Мегабайт, Гигабайт – это и есть единицы измерения информации.

Правда, в компьютерных исчислениях в 1 килобайте не 1000 байт, а 1024. Почему столько? Информация в компьютере представлена в двоичном виде и принято считать, что килобайт - это 2 в десятой степени байта или 1024 байт.
Ниже представлены общепринятые единицы.

10 Количественное и качественное измерение информации.

11 Алфавитный и содержательный подходы к измерению информации

Векторное и фрактальное изображения.

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

К программным средствам создания и обработки векторной графики относятся следующие ГР: CorelDraw, Adobe Illustrator, а также векторизаторы (трассировщики) - специализированные пакеты преобразования растровых изображений в векторные.

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

Задачи.

Известно, что видеопамять компьютера имеет объем 512 Кбайт. Разрешающая способность экрана 640 на 200. Сколько страниц экрана одновременно разместится в видеопамяти при палитре
а) из 8 цветов;
б) 16 цветов;
в) 256 цветов?

Сколько бит требуется, чтобы закодировать информацию о 130 оттенках? Нетрудно подсчитать, что 8 (то есть 1 байт), поскольку при помощи 7 бит можно сохранить номер оттенка о 0 до 127, а 8 бит хранят от 0 до 255. Легко видеть, что такой способ кодирования неоптимален: 130 заметно меньше 255. Подумайте, как уплотнить информацию о рисунке при его записи в файл, если известно, что
а) в рисунке одновременно содержится только 16 цветовых оттенков из 138 возможных;
б) в рисунке присутствуют все 130 оттенков одновременно, но количество точек, закрашенных разными оттенками, сильно различаются.

А) очевидно, что для хранения информации о 16 оттенках достаточно 4 бита (половина байта). Однако так как эти 16 оттенков выбраны из 130, то они могут иметь номера, не умещающиеся в 4 битах. Поэтому воспользуемся методом палитр. Назначим 16 используемым в нашем рисунке оттенкам свои “локальные” номера от 1 до 15 и закодируем весь рисунок из расчета 2 точки на байт. А затем допишем к этой информации (в конец содержащего ее файла) таблицу соответствия, состоящую из 16 пар байтов с номерами оттенков: 1 байт - наш “локальный” номер в данном рисунке, второй - реальный номер данного оттенка. (когда вместо последнего используется закодированная информация о самом оттенке, например, сведения об яркости свечения “электроннык пушек” Red, Green, Blue электронно-лучевой трубки, то такая таблица и будет представлять собой палитру цветов). Если рисунок достаточно велик, выигрыш в объеме полученного файла будет значительным;
б) попытаемся реализовать простейший алгоритм архивации информации о рисунке. Назначим трем оттенкам, которыми закрашено минимальное количество точек, коды 128 - 130, а остальным оттенкам - коды 1 -127. Будем записывать в файл (котрый в этом случае представлыет собой не последовательность байтов, а сплошной битовый поток) семибитные коды для оттенков с номерами от 1 до 127. Для оставшихся же трех оттенков в битовом потоке будем записывать число-признак - семибитный 0 - и сразу за ним двухбитный “локальный” номер, а в конце файла добавим таблицу соответствия “локальных”и реальных номеров. Так как оттенки с кодами 128 - 130 встречаются редко, то семибитных нулей будет немного.

Заметим, что постановка вопросов в данной задаче не исключает и другие варианты решения, без привязки к цветовому составу изображения - архивацию:
а) на основе выделения последовательности точек, закрашенных одинаковыми оттенками и замены каждой из этих последовательностей на пару чисел (цвет),(количество) (этот принцип лежит в основе графического формата РСХ);
б) путем сравнения пиксельных строк (запись номеров оттенков точек первой страницы целиком, а для последующих строк запись номеров оттенков только тех точек, оттенки которых отличаются от отенков точек, стоящих в той же позиции в предыдущей строке, - это основа формата GIF);
в) с помощью фрактального алгоритма упаковки изображений (формат YPEG). (ИО 6,1999)

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

На слух человек воспринимает упругие волны, имеющие частоту где-то в пределах от 16 Гц до 20 кГц (1 Гц - 1 колебание в секунду). В соответствии с этим упругие волны в любой среде, частоты которых лежат в указанных пределах, называют звуковыми волнами или просто звуком. В учении о звуке важны такие понятия как тон и тембр звука. Всякий реальный звук, будь то игра музыкальных инструментов или голос человека, - это своеобразная смесь многих гармонических колебаний с определенным набором частот.

Колебание, которое имеет наиболее низкую частоту, называют основным тоном, другие - обертонами.

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

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

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

Условно его можно разбить на несколько видов:

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

К первой группе относятся все служебные программы операционной системы. Так, например, win 95 и 98 имеют свои собственные программы микшеры и утилиты для воспроизведения/записи звука, проигрывания компакт-дисков и стандартных MIDI - файлов. Установив звуковую плату можно при помощи этих программ проверить ее работоспособность. Например, программа Фонограф предназначена для работы с wave-файлами (файлы звукозаписи в формате Windows). Эти файлы имеют расширение.WAV . Эта программа предоставляет возможность воспроизводить, записывать и редактировать звукозапись приемами, аналогичными приемам работы с магнитофоном. Желательно для работы с Фонографом подключить микрофон к компьютеру. Если необходимо сделать звукозапись, то нужно определиться с качеством звука, так как именно от нее зависит продолжительность звукозаписи. Возможная продолжительность звучания тем меньше, чем выше качество записи. При среднем качестве записи можно удовлетворительно записывать речь, создавая файлы продолжительностью звучания до 60 секунд. Примерно 6 секунд будет продолжительность записи, имеющая качество музыкального компакт - диска.

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

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

Переменный электрический ток, который появляется на выходе микрофона, называется аналоговым сигналом. Применительно к электрическому сигналу «аналоговый» обозначает, что этот сигнал непрерывен по времени и амплитуде. Он точно отражает форму звуковой волны, которая распространяется в воздухе.

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

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

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

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

Цифро-аналоговое и аналого-цифровое преобразование звуковой информации.

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

Звуковые волны при помощи микрофона превращаются в аналоговый переменный электрический сигнал. Он проходит через звуковой тракт (см. приложения рисунок 1.11, схема 1) и попадает в аналого-цифровой преобразователь (АЦП) - устройство, которое переводит сигнал в цифровую форму.

В упрощенном виде принцип работы АЦП заключается в следующем: он измеряет через определенные промежутки времени амплитуду сигнала и передает дальше, уже по цифровому тракту, последовательность чисел, несущих информацию об изменениях амплитуды (.см. приложения рисунок 1.11, схема 2).

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

Семпл - это промежуток времени между двумя измерениями амплитуды аналогового сигнала.

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

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

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

Важными параметрами семплирования являются частота и разрядность.
Частота - количество измерений амплитуды аналогового сигнала в секунду.

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

В новом формате компакт-дисков Audio DVD за одну секунду сигнал измеряется 96 000 раз, т.е. применяют частоту семплирования 96 кГц. Для экономии места на жестком диске в мультимедийных приложениях довольно часто применяют меньшие частоты: 11, 22, 32 кГц. Это приводит к уменьшению слышимого диапазона частот, а, значит, происходит сильное искажение того, что слышно.

Если в виде графика представить один и тот же звук высотой 1 кГц (нота до седьмой октавы фортепиано примерно соответствует этой частоте), но семплированный с разной частотой (нижняя часть синусоиды не показана на всех графиках), то будут видны различия. Одно деление на горизонтальной оси, которая показывает время, соответствует 10 семплам. Масштаб взят одинаковый см. приложения рисунок 1.13). Можно видеть, что на частоте 11 кГц примерно пять колебаний звуковой волны приходится на каждые 50 семплов, то есть один период синусоиды отображается всего при помощи 10 значений. Это довольно неточная передача. В то же время, если рассматривать частоту оцифровки 44 кГц, то на каждый период синусоиды приходится уже почти 50 семплов. Это позволяет получить сигнал хорошего качества.

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

Для кодирования значения амплитуды используют принцип двоичного кодирования. Звуковой сигнал должен быть представленным в виде последовательности электрических импульсов (двоичных нулей и единиц). Обычно используют 8, 16-битное или 20-битное представление значений амплитуды. При двоичном кодировании непрерывного звукового сигнала его заменяют последовательностью дискретных уровней сигнала. От частоты дискретизации (количества измерений уровня сигнала в единицу времени) зависит качество кодирования. С увеличением частоты дискретизации увеличивается точность двоичного представления информации. При частоте 8 кГц (количество измерений в секунду 8000) качество семплированного звукового сигнала соответствует качеству радиотрансляции, а при частоте 48 кГц (количество измерений в секунду 48000) - качеству звучания аудио- CD.

Если использовать 8-битное кодирование, то можно достичь точность изменения амплитуды аналогового сигнала до 1/256 от динамического диапазона цифрового устройства (2 8 = 256).

Если использовать 16-битное кодирование для представления значений амплитуды звукового сигнала, то точность измерения возрастет в 256 раз.

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

Вспомним формулу К = 2 a . Здесь К - количество всевозможных звуков (количество различных уровней сигнала или состояний), которые можно получить при помощи кодирования звука а битами

Код - это набор условных обозначений (или сигналов) для записи (или передачи) некоторых заранее определенных понятий.

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

Обычно каждый образ при кодировании (иногда говорят - шифровке) представлении отдельным знаком.

Знак - это элемент конечного множества отличных друг от друга элементов.

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

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

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

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

Способы кодирования информации.

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

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

Кодирование символьной (текстовой) информации.

Основная операция, производимая над отдельными символами текста - сравнение символов.

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

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

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

Наиболее популярные таблицы перекодировки: ДКОИ-8, ASCII, CP1251, Unicode.

Исторически сложилось, что в качестве длины кода для кодирования символов было выбрано 8 бит или 1 байт. Поэтому чаще всего одному символу текста, хранимому в компьютере, соответствует один байт памяти.

Различных комбинаций из 0 и 1 при длине кода 8 бит может быть 28 = 256, поэтому с помощью одной таблицы перекодировки можно закодировать не более 256 символов. При длине кода в 2 байта (16 бит) можно закодировать 65536 символов.

Кодирование числовой информации.

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

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

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

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

10 цифр, 12 знаков препинания, 15 знаков арифметических действий, буквы русского и латинского алфавита, ВСЕГО: 155 символов, что соответствует 8 бит информации.

Единицы измерения информации.

1 байт = 8 бит

1 Кбайт = 1024 байтам

1 Мбайт = 1024 Кбайтам

1 Гбайт = 1024 Мбайтам

1 Тбайт = 1024 Гбайтам

Суть кодирования заключается в том, что каждому символу ставят в соответствие двоичный код от 00000000 до 11111111 или соответствующий ему десятичный код от 0 до 255.

Необходимо помнить, что в настоящее время для кодировки русских букв используют пять различных кодовых таблиц (КОИ - 8, СР1251, СР866, Мас, ISO), причем тексты, закодированные при помощи одной таблицы не будут правильно отображаться в другой

Основным отображением кодирования символов является код ASCII - American Standard Code for Information Interchange- американский стандартный код обмена информацией, который представляет из себя таблицу 16 на 16, где символы закодированы в шестнадцатеричной системе счисления.

Кодирование графической информации.

Важным этапом кодирования графического изображения является разбиение его на дискретные элементы (дискретизация).

Основными способами представления графики для ее хранения и обработки с помощью компьютера являются растровые и векторные изображения

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

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

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

Pixel (picture element - элемент рисунка) - минимальная единица изображения, цвет и яркость которой можно задать независимо от остального изображения.

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

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

Для черно-белого изображения код цвета каждого пикселя задается одним битом.

Если рисунок цветной, то для каждой точки задается двоичный код ее цвета.

Поскольку и цвета кодируются в двоичном коде, то если, например, вы хотите использовать 16-цветный рисунок, то для кодирования каждого пикселя вам потребуется 4 бита (16=24), а если есть возможность использовать 16 бит (2 байта) для кодирования цвета одного пикселя, то вы можете передать тогда 216 = 65536 различных цветов. Использование трех байтов (24 битов) для кодирования цвета одной точки позволяет отразить 16777216 (или около 17 миллионов) различных оттенков цвета - так называемый режим “истинного цвета” (True Color). Заметим, что это используемые в настоящее время, но далеко не предельные возможности современных компьютеров.

Кодирование звуковой информации.

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

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

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

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

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

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

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

На сегодняшний день существуют такие методы кодирования:

  • медикаментозный;
  • психотерапевтический;
  • аппаратный.

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

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

Медикаментозное кодирование

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

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

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

Основные виды кодирования с помощью фармакологических средств:

  • кодирование от алкоголизма уколом;
  • таблетки для приема внутрь;
  • подшивание от алкоголизма.

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

Уколы

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

  1. Внутривенный укол против алкоголизма. Данная психо-фармакологическая методика носит название SIT-кодировка. Лекарственный препарат на основе дисульфирама вводится в вену, после чего проводится показательная провокационная проба;
  2. Внутримышечные уколы от хронического алкоголизма. Этот способ подразумевает введение дисульфирамсодержащего геля. Сразу после попадания в ткани гель кристаллизуется и образует своеобразное депо. Лекарственный препарат постепенно высвобождается оттуда и оказывает лечебное действие на протяжении длительного периода времени. Куда лучше вводить гель – решается индивидуально. Как правило, укол от алкоголизма делается в области ягодиц, подмышечных впадин или же препарат вводится под лопатку.

SIT-методика обрела широкую популярность в последние 5-7 лет. Лекарственный препарат вводят в вену после полноценного обследования и получения осведомленного согласия пациента. На протяжении некоторого времени до проведения процедуры SIT-кодировки человеку запрещено употреблять спиртные напитки – его кровь должна полностью очиститься от этанола.

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

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

Вшивание

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

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

Подшивка от алкоголизма проводится с применением таких препаратов:

  • Эспераль;
  • Тетлонг-250;
  • Торпедо;
  • Налтрексон;
  • Вивитрол.

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

Ампула от хронического алкоголизма на основе налтрексона (препараты Вивитрол и Налтрексон) действует совершенно иначе. После ее подшивания нет необходимости в проведении провокационной пробы. Человеку не будет плохо после употребления спиртных напитков. Все, что он будет чувствовать после подшивания – отсутствие эйфории и неприятные симптомы похмелья.

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

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

Пероральные средства

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

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

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

Таблетки, устраняющие тягу к алкоголю:

  • Метадоксил;
  • ПроПроТен-100;
  • Акампросат.

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

Психологическое кодирование

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

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

Преимущества метода Довженко:

  • простота, безопасность и надежность, проверенная временем;
  • высокая эффективность (метод Довженко помогает около 90% пациентов);
  • отсутствие побочных эффектов, которые вызывает медикаментозное лечение;
  • быстрое действие (для получения нужного эффекта хватает одного сеанса).

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

Аппаратное кодирование

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

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

Виды кодировки электрическим током:

  • электростимуляция;
  • электросудорожная терапия;
  • биоэлектроблокирование.

Последний метод был разработан профессором Шустовым Д.И. Он является научно обоснованным и очень эффективным. Успешность кодировки током по данной методике составляет свыше 90%. Биоэлектроблокирование помогает закодироваться на срок длительностью в один год, после чего требуется проведение поддерживающих сеансов.

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

Лазерное кодирование

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

Лазерное кодирование имеет такие преимущества перед остальными методами:

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

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

Какое кодирование самое эффективное

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

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

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

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

Преимущества медикаментозного кодирования:

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

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

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

22. КОДИРОВАНИЕ ИНФОРМАЦИИ

22.1. Общие сведения

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

В качестве элементов кодируемой информации могут выступать:

Буквы, слова и фразы естественного языка;

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

Аудиовизуальные образы;

Ситуации и явления;

Наследственная информация;

Кодовые обозначения могут представлять собой:

Буквы и сочетания букв естественного языка;

Графические обозначения;

Электромагнитные импульсы;

Световые и звуковые сигналы;

Набор и сочетание химических молекул;

Кодирование может выполняться в целях :

Удобства хранения, обработки и передачи информации (как правило, закодированная информация представляется более компактно, а также пригодна для обработки и передачи автоматическими программно-техническими средствами);

Удобства информационного обмена между субъектами;

Наглядности отображения;

Идентификации объектов и субъектов;

Сокрытия секретной информации;

Кодирование информации бывает одно- и многоуровневым . Примером одноуровневого кодирования служат световые сигналы, подаваемые светофором (красный – стой, желтый – приготовиться, зеленый – вперед). В качестве многоуровневого кодирования можно привести представление визуального (графического) образа в виде файла фотографии. Вначале визуальная картинка разбивается на составляющие элементарные элементы (пикселы), т.е. каждая отдельная часть визуальной картинки кодируется элементарным элементом. Каждый элемент представляется (кодируется) в виде набора элементарных цветов (RGB: англ. red – красный, green – зеленый, blue – синий) соответствующей интенсивностью, которая в свою очередь представляется в виде числового значения. Впоследствии наборы чисел, как правило, преобразуются (кодируются) с целью более компактного представления информации (например, в форматах jpeg, png и т.д.). И наконец, итоговые числа представляются (кодируются) в виде электромагнитных сигналов для передачи по каналам связи или областей на носителе информации. Следует отметить, что сами числа при программной обработке представляются в соответствии с принятой системой кодирования чисел.

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

Азбука Морзе - способ кодирования символов (букв алфавита, цифр, знаков препинания и др.) с помощью последовательности «точек» и «тире». За единицу времени принимается длительность одной точки. Длительность тире равна трём точкам. Пауза между элементами одного знака - одна точка (около 1/25 доли секунды), между знаками в слове - 3 точки, между словами - 7 точек. Назван в честь американского изобретателя и художника Сэмюэля Морзе.

Русская
буква
Латинская
буква
Код Морзе Русская
буква
Латинская
буква
Код Морзе Символ Код Морзе
A A · - Р R · - · 1 · - - - -
Б B - · · · С S · · · 2 · · - - -
В W · - - Т T - 3 · · · - -
Г G - - · У U · · - 4 · · · · -
Д D - · · Ф F · · - · 5 · · · · ·
Е (Ё) E · Х H · · · · 6 - · · · ·
Ж V · · · - Ц C - · - · 7 - - · · ·
З Z - - · · Ч O - - - · 8 - - - · ·
И I · · Ш CH - - - - 9 - - - - ·
Й J · - - - Щ Q - - · - 0 - - - - -
К K - · - Ъ N - - · - - Точка · · · · · ·
Л L · - · · Ы Y - · - - Запятая · - · - · -
М M - - Ь (Ъ) X - · · - - · · - - · ·
Н N - · Э E · · - · · ! - - · · - -
О O - - - Ю U · · - - @ · - - · - ·
П P · - - · Я A · - · - Конец связи (end contact) · · - · -

Рис.22.1. Фрагмент азбуки Морзе

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

Любопытный факт связан с изобретателем первой лампочки Томасом Альвой Эдисоном (1847-1931 гг.). Он плохо слышал и общался со своей женой, Мэри Стиуэлл, с помощью азбуки Морзе. Во время ухаживания Эдисон сделал предложение, отстучав слова рукой, и она ответила тем же способом. Телеграфный код стал обычным средством общения для супругов. Даже когда они ходили в театр, Эдисон клал руку Мэри себе на колено, чтобы она могла «телеграфировать» ему диалоги актеров .

Код Бодо - цифровой 5-битный код. Был разработан Эмилем Бодо в 1870 г. для своего телеграфа. Код вводился прямо клавиатурой, состоящей из пяти клавиш, нажатие или ненажатие клавиши соответствовало передаче или непередаче одного бита в пятибитном коде. Существует несколько разновидностей (стандартов) данного кода (CCITT-1, CCITT-2, МТК-2 и др.) В частности МТК-2 представляет собой модификацию международного стандарта CCITT-2 с добавление букв кириллицы.

Управляющие символы
Двоичный
код
Десятичный
код
Назначение
01000 8 Возврат каретки
00010 2 Перевод строки
11111 31 Буквы латинские
11011 27 Цифры
00100 4 Пробел
00000 0 Буквы русские
Двоичный
код
Десятичный
код
Латинская
буква
Русская
буква
Цифры и
прочие символы
00011 3 A А -
11001 25 B Б ?
01110 14 C Ц :
01001 9 D Д Кто там?
00001 1 E Е З
01101 13 F Ф Э
11010 26 G Г Ш
10100 20 H Х Щ
00110 6 I И 8
01011 11 J Й Ю
01111 15 K К (
10010 18 L Л )
11100 28 M М .
01100 12 N Н ,
11000 24 O О 9
10110 22 P П 0
10111 23 Q Я 1
01010 10 R Р 4
00101 5 S С "
10000 16 T Т 5
00111 7 U У 7
11110 30 V Ж =
10011 19 W В 2
11101 29 X Ь /
10101 21 Y Ы 6
10001 17 Z З +

Рис.22.2. Стандарт кода Бодо МТК-2

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

Рис. 22.3. Перфолента с кодом Бодо

Следует отметить два интересных факта, связанных с кодом Бодо.

1. Сотрудники телеграфной компании AT&T Гильберто Вернам и Мейджор Джозеф Моборн в 1917 г. предложили идею автоматического шифрования телеграфных сообщений на основе кода Бодо. Шифрование выполнялось .

2. Соответствие между английским и русским алфавитами, принятое в МТК-2, было использовано при создании компьютерных кодировок КОИ-7 и КОИ-8.

ASCII и Unicode.

ASCII (англ. American Standard Code for Information Interchange) - американская стандартная кодировочная таблица для печатных и управляющих символов. Изначально была разработана как 7-битная для представления 128 символов, при использовании в компьютерах на символ выделялось 8 бит (1 байт), где 8-ой бит служил для контроля целостности (бит четности). Позднее, с задействованием 8 бита для представления дополнительных символов (всего 256 символов), например букв национальных алфавитов, стала восприниматься как половина 8-битной. В частности на основе ASCII были разработаны кодировки, содержащие буквы русского алфавита: для операционной системы MS-DOS - cp866 (англ. code page – кодовая страница), для операционной системы MS Windows – Windows 1251, для различных операционных систем – КОИ-8 (код обмена информацией, 8 битов), ISO 8859-5 и другие.

Кодировка ASCII Дополнительные символы
Двоичный
код
Десятичный
код
Символ Двоичный
код
Десятичный
код
Символ Двоичный
код
Десятичный
код
Символ Двоичный
код
Десятичный
код
Символ
00000000 0 NUL 01000000 64 @ 10000000 128 Ђ 11000000 192 А
00000001 1 SOH 01000001 65 A 10000001 129 Ѓ 11000001 193 Б
00000010 2 STX 01000010 66 B 10000010 130 11000010 194 В
00000011 3 ETX 01000011 67 C 10000011 131 ѓ 11000011 195 Г
00000100 4 EOT 01000100 68 D 10000100 132 11000100 196 Д
00000101 5 ENQ 01000101 69 E 10000101 133 11000101 197 Е
00000110 6 ACK 01000110 70 F 10000110 134 11000110 198 Ж
00000111 7 BEL 01000111 71 G 10000111 135 11000111 199 З
00001000 8 BS 01001000 72 H 10001000 136 11001000 200 И
00001001 9 HT 01001001 73 I 10001001 137 11001001 201 Й
00001010 10 LF 01001010 74 J 10001010 138 Љ 11001010 202 К
00001011 11 VT 01001011 75 K 10001011 139 11001011 203 Л
00001100 12 FF 01001100 76 L 10001100 140 Њ 11001100 204 М
00001101 13 CR 01001101 77 M 10001101 141 Ќ 11001101 205 Н
00001110 14 SO 01001110 78 N 10001110 142 Ћ 11001110 206 О
00001111 15 SI 01001111 79 O 10001111 143 Џ 11001111 207 П
00010000 16 DLE 01010000 80 P 10010000 144 ђ 11010000 208 Р
00010001 17 DC1 01010001 81 Q 10010001 145 11010001 209 С
00010010 18 DC2 01010010 82 R 10010010 146 11010010 210 Т
00010011 19 DC3 01010011 83 S 10010011 147 11010011 211 У
00010100 20 DC4 01010100 84 T 10010100 148 11010100 212 Ф
00010101 21 NAK 01010101 85 U 10010101 149 11010101 213 Х
00010110 22 SYN 01010110 86 V 10010110 150 11010110 214 Ц
00010111 23 ETB 01010111 87 W 10010111 151 - 11010111 215 Ч
00011000 24 CAN 01011000 88 X 10011000 152
11011000 216 Ш
00011001 25 EM 01011001 89 Y 10011001 153 11011001 217 Щ
00011010 26 SUB 01011010 90 Z 10011010 154 љ 11011010 218 Ъ
00011011 27 ESC 01011011 91 [ 10011011 155 11011011 219 Ы
00011100 28 FS 01011100 92 \ 10011100 156 њ 11011100 220 Ь
00011101 29 GS 01011101 93 ] 10011101 157 ќ 11011101 221 Э
00011110 30 RS 01011110 94 ^ 10011110 158 ћ 11011110 222 Ю
00011111 31 US 01011111 95 _ 10011111 159 џ 11011111 223 Я
00100000 32
01100000 96 ` 10100000 160
11100000 224 а
00100001 33 ! 01100001 97 a 10100001 161 Ў 11100001 225 б
00100010 34 " 01100010 98 b 10100010 162 ў 11100010 226 в
00100011 35 # 01100011 99 c 10100011 163 Ј 11100011 227 г
00100100 36 $ 01100100 100 d 10100100 164 ¤ 11100100 228 д
00100101 37 % 01100101 101 e 10100101 165 Ґ 11100101 229 е
00100110 38 & 01100110 102 f 10100110 166 ¦ 11100110 230 ж
00100111 39 " 01100111 103 g 10100111 167 § 11100111 231 з
00101000 40 ( 01101000 104 h 10101000 168 Ё 11101000 232 и
00101001 41 ) 01101001 105 i 10101001 169 © 11101001 233 й
00101010 42 * 01101010 106 j 10101010 170 Є 11101010 234 к
00101011 43 + 01101011 107 k 10101011 171 « 11101011 235 л
00101100 44 , 01101100 108 l 10101100 172 ¬ 11101100 236 м
00101101 45 - 01101101 109 m 10101101 173 ¬ 11101101 237 н
00101110 46 . 01101110 110 n 10101110 174 ® 11101110 238 о
00101111 47 / 01101111 111 o 10101111 175 Ї 11101111 239 п
00110000 48 0 01110000 112 p 10110000 176 ° 11110000 240 р
00110001 49 1 01110001 113 q 10110001 177 ± 11110001 241 с
00110010 50 2 01110010 114 r 10110010 178 І 11110010 242 т
00110011 51 3 01110011 115 s 10110011 179 і 11110011 243 у
00110100 52 4 01110100 116 t 10110100 180 ґ 11110100 244 ф
00110101 53 5 01110101 117 u 10110101 181 µ 11110101 245 х
00110110 54 6 01110110 118 v 10110110 182 11110110 246 ц
00110111 55 7 01110111 119 w 10110111 183 · 11110111 247 ч
00111000 56 8 01111000 120 x 10111000 184 ё 11111000 248 ш
00111001 57 9 01111001 121 y 10111001 185 11111001 249 щ
00111010 58 : 01111010 122 z 10111010 186 є 11111010 250 ъ
00111011 59 ; 01111011 123 { 10111011 187 » 11111011 251 ы
00111100 60 < 01111100 124 | 10111100 188 ј 11111100 252 ь
00111101 61 = 01111101 125 } 10111101 189 Ѕ 11111101 253 э
00111110 62 > 01111110 126 ~ 10111110 190 ѕ 11111110 254 ю
00111111 63 ? 01111111 127 DEL 10111111 191 ї 11111111 255 я

Рис. 22.4. Кодовая страница Windows 1251

Unicode - стандарт кодирования символов, позволяющий представить знаки почти всех письменных языков. Стандарт был предложен в 1991 г. некоммерческой организацией «Консорциум Юникода» (англ. Unicode Consortium, Unicode Inc.). Применение этого стандарта позволяет закодировать большее число символов (чем в ASCII и прочих кодировках) за счет двухбайтового кодирования символов (всего 65536 символов). В документах Unicode могут соседствовать китайские иероглифы, математические символы, буквы греческого алфавита, латиницы и кириллицы.

Коды в стандарте Unicode разделены на несколько разделов. Первые 128 кодов соответствуют кодировке ASCII. Далее расположены разделы букв различных письменностей, знаки пунктуации и технические символы. В частности прописным и строчным буквам русского алфавита соответствуют коды 1025 (Ё), 1040-1103 (А-я) и 1105 (ё).

Шрифт Брайля - рельефно-точечный тактильный шрифт, предназначенный для письма и чтения незрячими людьми. Был разработан в 1824 г. французом Луи Брайлем (Louis Braille), сыном сапожника. Луи в возрасте трёх лет потерял зрение, в результате воспаления глаз, начавшегося от того, что мальчик поранился шорным ножом (подобие шила) в мастерской отца. В возрасте 15 лет он создал свой рельефно-точечный шрифт, вдохновившись простотой «ночного шрифта» капитана артиллерии Шарля Барбье (Charles Barbier), который использовался военными того времени для чтения донесений в темноте.

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

Рис. 22.5. Нумерация точек

Каждому символу соответствует свой уникальный набор выпуклых точек. Т.о. шрифт Брайля представляет собой систему для кодирования 2 6 = 64 символов. Но присутствие в шрифте управляющих символов (например, переход к буквам или цифрам) позволяет увеличить количество кодируемых символов.

Управляющие символы
Символ
шрифта
Брайля
Назначение
Буквы
Цифры
Буквы, цифры и остальные символы
Символ
шрифта
Брайля
Латинские
буквы
Русские
буквы
Цифры
A А 1
B Б 2
C Ц 3
D Д 4
E Е 5
F Ф 6
G Г 7
H Х 8
I И 9
J Ж 0
K К
L Л
M М
N Н
O О
P П
Q Ч
R Р
S С
T Т
U У
V
W В
X Щ
Y
Z З

Ё

Й
Ш
Ъ
Ы
Ь
Э
Ю
Я
Точка
Запятая
Восклицательный знак
Вопросительный знак
Точка с запятой
Дефис
Пробел

Рис. 22.6. Шрифт Брайля

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

Рис. 22.7. Надпись "Sochi 2014" шрифтом Брайля на золотой медали Параолимпийских игр 2014г.

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

В 1948 г. Бернард Сильвер (Bernard Silver), аспирант Института Технологии Университета Дрекселя в Филадельфии, услышал, как президент местной продовольственной сети просил одного из деканов разработать систему, автоматически считывающую информацию о продукте при его контроле. Сильвер рассказал об этом друзьям - Норману Джозефу Вудланду (Norman Joseph Woodland) и Джордину Джохэнсону (Jordin Johanson). Втроем они начали исследовать различные системы маркировки. Их первая работающая система использовала ультрафиолетовые чернила, но они были довольно дороги, а кроме того, со временем выцветали.

Убежденный в том, что система реализуема, Вудланд покинул Филадельфию и перебрался во Флориду в квартиру своего отца для продолжения работы. 20 октября 1949 г. Вудланд и Сильвер подали заявку на изобретение, которая была удовлетворена 7 октября 1952 г. Вместо привычных нам линий патент содержал описание штрихкодовой системы в виде концентрических кругов.

Рис. 22.8. Патент системы Вудланда и Сильвера с концентрическими кругами, предшественниками современных штрихкодов

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

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

Таблица 22.1. Разновидности штрихкодов

Наименование Пример штрих-кода Примечания
Линейные
Universal Product Code, UPC
(универсальный код товара)

(UPC-A)
Американский стандарт штрихкода, предназначенный для кодирования идентификатора товара и производителя.
Имеются разновидности:
- UPC-E – кодируются 8 цифр;
- UPC-A – кодируется 13 цифр.
European Article Number, EAN
(европейский номер товара)

(EAN-13)
Европейский стандарт штрихкода, предназначенный для кодирования идентификатора товара и производителя.
Имеются разновидности:
- EAN-8 – кодируются 8 цифр;
- EAN 13 – кодируется 13 цифр;
- EAN-128 – кодируется любое количество букв и цифр, объединенных в регламентированные группы.
ГОСТ ИСО/МЭК 15420-2001 «Автоматическая идентификация. Кодирование штриховое. Спецификация символики EAN/UPC (ЕАН/ЮПиСи)».
Code 128
(Код 128)
Включает в себя 107 символов. Из которых 103 символа данных, 3 стартовых, и 1 остановочный символ. Для кодирования всех 128-ми символов ASCII предусмотрено три комплекта символов - A, B и C, которые могут использоваться внутри одного штрихкода.
EAN-128 кодирует информацию по алфавиту Code 128
ГОСТ 30743-2001 (ИСО/МЭК 15417-2000) «Автоматическая идентификация. Кодирование штриховое. Спецификация символики Code 128 (Код 128)».
Двумерные
DataMatrix
(матричные данные)
Максимальное количество символов, которые помещаются в один код - 2048 байт.
ГОСТ Р ИСО/МЭК 16022-2008 «Автоматическая идентификация. Кодирование штриховое. Спецификация символики Data Matrix».
QR-код
(англ. quick response - быстрый отклик)
Квадраты в углах изображения позволяют нормализовать размер изображения и его ориентацию, а также угол, под которым сенсор относится к поверхности изображения. Точки переводятся в двоичные числа с проверкой контрольной суммы.
Максимальное количество символов, которые помещаются в один QR-код:
- цифры - 7089;
- цифры и буквы (латиница) - 4296;
- двоичный код - 2953 байт;
- иероглифы - 1817.
MaxiCode
(максикод)
Размер - дюйм на дюйм (1 дюйм = 2.54 см).
Используется для грузоотправительных и грузоприемных систем.

ГОСТ Р 51294.6-2000 «Автоматическая идентификация. Кодирование штриховое. Спецификация символики MaxiCode (Максикод)».
PDF147
(англ. Portable Data File -
переносимый файл данных)
Применяется при идентификации личности, учете товаров, при сдаче отчетности в контролирующие органы и других областях.
Поддерживает кодирование до 2710 символов и может содержать до 90 строк.
Microsoft Tag
(метка Microsoft)
Разработан для распознавания при помощи фотокамер, встроенных в мобильные телефоны.
Может вместить в себя столько же символов, что Code128.
Предназначен для быстрой идентификации и получения на устройство заранее подготовленной информации (веб-ссылки, произвольного текста длиной до 1000 символов, телефонного номера и т.п.), привязанной к коду и хранящейся на сервере компании Microsoft.
Содержит 13 байт плюс один дополнительный бит для контроля четности.

Представление чисел в двоичном виде (в компьютере) . Как известно, информация, хранящаяся и обрабатываемая в компьютерах, представлена в двоичном виде. Бит (англ. bi nary digit - двоичное число; также игра слов: англ. bit - кусочек, частица) - единица измерения количества информации, равная одному разряду в двоичной системе счисления. С помощью бита можно закодировать (представить, различать) два состояния (0 или 1; да или нет). Увеличивая количество битов (разрядов), можно увеличить количество кодируемых состояний. Например, для байта (англ. byte), состоящего из 8 битов, количество кодируемых состояний составляет 2 8 = 256.

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

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

Для беззнакового представления все разряды отводятся под представление самого числа. Например, с помощью байта можно представить беззнаковые целые числа от 0 10 до 255 10 (00000000 2 - 11111111 2) или вещественные числа с одним десятичным знаком от 0.0 10 до 25.5 10 (00000000 2 - 11111111 2). Для знакового представления, т.е. положительных и отрицательных чисел, старший разряд отводится под знак (0 – положительное число, 1 – отрицательное).

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

В прямом коде запись положительного и отрицательного числа выполняется так же, как и в беззнаковом представление (за исключение того, что старший разряд отводится под знак). Таким образом, числа 5 10 и -5 10 записываются, как 00000101 2 и 10000101 2 . В прямом коде имеются два кода числа 0: «положительный нуль» 00000000 2 и «отрицательный нуль» 10000000 2 .

При использовании обратного кода отрицательное число записывается в виде инвертированного положительного числа (0 меняются на 1 и наоборот). Например, числа 5 10 и -5 10 записываются, как 00000101 2 и 11111010 2 . Следует отметить, что в обратном коде, как и в прямом, имеются «положительный нуль» 00000000 2 и «отрицательный нуль» 11111111 2 . Применение обратного кода позволяет вычесть одно число из другого, используя операцию сложения, т.е. вычитание двух чисел X – Y заменяется их суммой X + (-Y). При этом используются два дополнительных правила:

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

Если количество разрядов результата получается больше, чем отведено на представление чисел, то крайний левый разряд (старший) отбрасывается, а к результату добавляется 1 2 .

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

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

X – Y 5 – 5 6 – 5 5 – 6 5 – (-6)
X 2 00000101 00000110 00000101 00000101
Y 2 00000101 00000101 00000110 11111001
Замена сложением 5 + (-5) 6 + (-5) 5 + (-6) 5 + 6
Обратный код для вычитаемого (-Y 2) 11111010 11111010 11111001 00000110
Сложение 00000101
+
11111010
11111111
00000110
+
11111010
100000000
00000101
+
11111001
11111110
00000101
+
00000110
00001011
не требуется 00000000
+
00000001
00000001
не требуется не требуется
Результат -0 1 -1 11

Несмотря на то, что обратный код значительно упрощает вычислительные процедуры, а соответственно и быстродействие компьютеров, наличие двух «нулей» и другие условности привели к появлению дополнительного кода. При представлении отрицательного числа его модуль вначале инвертируется, как в обратном коде, а затем к инверсии сразу добавляется 1 2 .

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

Таблица 22.3. Представление чисел в различных кодах

Десятичное
представление
Код двоичного представления (8 бит)
прямой обратный дополнительный
127 01111111 01111111 01111111
6 00000110 00000110 00000110
5 00000101 00000101 00000101
1 00000001 00000001 00000001
0 00000000 00000000 00000000
-0 10000000 11111111 ---
-1 10000001 11111110 11111111
-5 10000101 11111010 11111011
-6 10000110 11111001 11111010
-127 11111111 10000000 10000001
-128 --- --- 10000000

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

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

X – Y 5 – 5 6 – 5 5 – 6 5 – (-6)
X 2 00000101 00000110 00000101 00000101
Y 2 00000101 00000101 00000110 11111010
Замена сложением 5 + (-5) 6 + (-5) 5 + (-6) 5 + 6
Дополнительный код для вычитаемого (-Y 2) 11111011 11111011 11111010 00000110
Сложение 00000101
+
11111011
00000000
00000110
+
11111011
100000001
00000101
+
11111010
11111111
00000101
+
00000110
00001011
Отбрасывание старшего разряда и добавление 1 2 не требуется 00000001 не требуется не требуется
Результат -0 1 -1 11

Можно возразить, что представление чисел в дополнительных кодах требует на одну операцию больше (после инверсии всегда требуется сложение с 1 2), что может и не потребоваться в дальнейшем, как в примерах с обратными кодами. В данном случае срабатывает известный «принцип чайника». Лучше сделать процедуру линейной, чем применять в ней правила «Если A то B» (даже если оно одно). То, что с человеческой точки зрения кажется увеличением трудозатрат (вычислительной и временной сложности), с точки зрения программно-технической реализации может оказаться эффективней.

Еще одно из преимуществ дополнительного кода перед обратным заключается в возможности представления в единице информации на одно число (состояние) больше, за счет исключения «отрицательного нуля». Поэтому, как правило, диапазон представления (хранения) для знаковых целых чисел длиной один байт составляет от +127 до -128.

2. Формат с плавающей запятой , в основном, используется для вещественных чисел. Число в данном формате представляется в экспоненциальном виде

X = e n * m, (22.1)

где e - основание показательной функции;
n - порядок основания;
e n - характеристика числа;
m - мантисса (лат. mantissa - прибавка) – множитель, на который надо умножить характеристику числа, чтобы получить само число.

Например, число десятичное число 350 может быть записано, как 3.5 * 10 2 , 35 * 10 1 , 350 * 10 0 и т.д. В нормализованной научной записи , порядок n выбирается такой, чтобы абсолютная величина m оставалась не меньше единицы, но строго меньше десяти (1 ≤ |m| < 10). Таким образом, в нормализованной научной записи число 350 выглядит, как 3.5 * 10 2 . При отображении чисел в программах, учитывая, что основание равно 10, их записывают в виде m E ± n , где Е означает «*10^» («…умножить на десять в степени…»). Например, число 350 – 3.5Е+2, а число 0.035 – 3.5Е-2.

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

Рис. 22.9. Двоичный формат представления чисел с плавающей запятой

Биты bn± и bm±, означающие знак порядка и мантиссы, кодируются аналогично числам с фиксированной запятой: для положительных чисел «0», для отрицательных – «1». Значение порядка выбирается таким образом, чтобы величина целой части мантиссы в десятичном (и соответственно в двоичном) представлении равнялась «1», что будет соответствовать нормализованной записи для двоичных чисел. Например, для числа 350 10 порядок n = 8 10 = 001000 2 (350 = 1.3671875 * 2 8), а для 576 10 – n = 9 10 = 001001 2 (576 = 1.125 * 2 9). Битовое представление величины порядка может быть выполнено в прямом, обратном или дополнительном коде (например, для n = 8 10 бинарный вид 001000 2). Величина мантиссы отображает дробную часть. Для ее преобразования в двоичный вид, она последовательно умножается на 2, пока не станет равной 0. Например,

Рис. 22.10. Пример получения дробной части в бинарном виде

Целые части, получаемые в результате последовательного перемножения, и представляют собой двоичный вид дробной части (0.3671875 10 = 0101111 2). Оставшаяся часть разрядов величины мантиссы заполняется 0. Таким образом, итоговый вид числа 350 в формате с плавающей запятой с учетом представления мантиссы в нормализованной записи

Рис. 22.11. Двоичный вид числа 350

В программно-аппаратных реализациях арифметических действий широко распространен стандарт представления чисел с плавающей точкой IEEE 2 754 (последняя редакция «754-2008 - IEEE Standard for Floating-Point Arithmetic»). Данный стандарт определяет форматы с плавающими запятыми для представления чисел одинарной (англ. single, float) и двойной (англ. double) точности. Общая структура форматов

Рис. 22.12. Общий формат представления двоичных чисел в стандарте IEEE 754

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

Таблица 22.5. Характеристики форматов представления двоичных чисел в стандарте IEEE 754

Формат single double
Общий размер, бит (байт) 32 (4) 64 (8)
Число бит для порядка 8 11
Число бит для мантиссы
(без учета знакового бита)
23 52
Величина порядка 2 128 .. 2 -127
(±3.4 * 10 38 .. 1.7 * 10 -38)
2 1024 .. 2 -1023
(±1.8 * 10 308 .. 9.0 * 10 -307)
Смещение порядка 127 1023
Диапазон представления чисел
(без учета знака)
±1.4 * 10 -45 .. 3.4 * 10 38 ±4.9 * 10 -324 .. 1.8 * 10 308
Количество значащих цифр числа
(не более)
8 16

Особенностью представления чисел по стандарту IEEE является отсутствие бита под знак порядка. Несмотря на это, величина порядка может принимать как положительные значения, так и отрицательные. Этот момент учитывается т.н. «смещением порядка». После преобразования двоичного вида порядка (записанного в прямом коде) в десятичный от полученной величины отнимается «смещение порядка». В результате получается «истинное» значения порядка числа. Например, если для числа одинарной точности указан порядок 11111111 2 (= 255 10), то величина порядка на самом деле 128 10 (= 255 10 - 127 10), а если 00000000 2 (= 0 10), то -127 10 (= 0 10 - 127 10).

Величина мантиссы указывается, как и в предыдущем случае, в нормализованном виде.

C учетом вышеизложенного, число 350 10 в формате одинарной точности стандарта IEEE 754 записывается следующим образом.

Рис. 22.13. Двоичный вид числа 350 по стандарту IEEE

К другим особенностям стандарта IEEE относится возможность представления специальных чисел. К ним относятся значения NaN (англ. Not a Number - не число) и +/-INF (англ. Infinity - бесконечность), получающихся в результате операций типа деления на ноль. Также сюда попадают денормализованные числа, у которых мантисса меньше единицы.

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

0.0
1.7
3.4
5.1
6.8
8.5
10.2
11.899999999999999
13.599999999999998
15.299999999999997
16.999999999999996
18.699999999999996
20.399999999999995
22.099999999999994
23.799999999999994
25.499999999999993
27.199999999999992
28.89999999999999
30.59999999999999
32.29999999999999
33.99999999999999
35.699999999999996
37.4
39.1
40.800000000000004
42.50000000000001
44.20000000000001
45.90000000000001
47.600000000000016

Рис. 22.14. Результат последовательного добавления числа 1.7 (Java 7)

Другой нюанс обнаруживается при сложении двух чисел, у которых значительно отличается порядок. Например, результатом сложения 10 10 + 10 -10 будет 10 10 . Даже если последовательно триллион (10 12) раз добавлять 10 -10 к 10 10 , то результат останется прежним 10 10 . Если же к 10 10 добавить произведение 10 -10 * 10 12 , что с математической точки зрения одно и то же, результат станет 10000000100 (1.0000000100 * 10 10).

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

В ДНК используется четыре азотистых основания - аденин (А), гуанин (G), цитозин (С), тимин (T), которые в русскоязычной литературе обозначаются буквами А, Г, Ц и Т. Эти буквы составляют алфавит генетического кода. В молекулах ДНК нуклеотиды выстраиваются в цепочки и, таким образом, получаются последовательности генетических букв.

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

Рис. 22.15. Фрагмент ДНК

2 IEEE (англ. Institute of Electrical and Electronics Engineers) - институт инженеров по электротехнике и электронике.

3 Содержит азотистое основание, соединенное с сахаром, и фосфорную кислоту.

22.3. Секретные кодовые системы

Секретные коды, как и шифры, предназначены для обеспечения конфиденциальности информации. Изначально секретные кодовые системы представляли собой систему, в основе которой лежало подобие жаргонного кода. Они возникли в целях сокрытия имен реальных людей, упоминавшихся в переписке. Это были небольшие списки, в которых в были записаны скрываемые имена, а напротив них - кодовые замены (подстановки). Официальные коды для сокрытия содержания донесений, которыми пользовались папские эмиссары и послы средиземноморских городов-государств, найденные в ранних архивах Ватикана, датируются XIV в. По мере возрастания потребности в безопасности переписки, у представителей городов-государств появились более обширные перечни, которые включали в себя не только кодовые замены имен людей, но и стран, городов, видов оружия, провианта и т.д. В целях повышения защищенности информации к перечням были добавлены шифралфавиты для кодирования слов, не вошедших в перечень, а также правила их использования, базирующиеся на различных стеганографических и криптографических методах. Такие сборники получили название «номенклаторы ». С XV и до середины XIX в. они были основной формой обеспечения конфиденциальности информации .

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

Изобретение телеграфа и азбуки Морзе, а также прокладка трансатлантического кабеля в середине XIX в. значительно расширило сферы применения секретных кодов. Помимо традиционных областей их использования (в дипломатической переписке и в военных целях) они стали широко использоваться в коммерции и на транспорте. Секретные кодовые системы того времени в своем названии содержали слово «код » («Код Госдепартамента (1867 г.)», «Американский код для окопов», «Речные коды: Потомак», «Черный код») или «шифр » («Шифр Госдепартамента (1876 г.)», «Зеленый шифр»). Следует отметить, что, несмотря на наличие в названии слова «шифр», в основу этих систем было положено кодирование.

Рис. 22.16. Фрагмент «Шифра Госдепартамента (1899 г.)»

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

Таблица 22.6. Способы обеспечения конфиденциальности информации в секретных кодовых системах

Способ Тип Примечания Примеры
(кодируемое слово – кодовое обозначение)
Замена слова (словосочетания) другим словом произвольной длины стеганографический Аналог - .
1. Номенклатор города Сиены (XV в.): Cardinales (кардинал) – Florenus; Antonello da Furli (Антолло да Фурли) – Forte.

2. Шифр Госдепартамента 1899 г.: Russia (Россия) – Promotes; Cabinet of Russia (Правительство России) – Promptings.

3. Код руководителя службы связи (1871 г.): 10:30 – Anna, Ida; 13th (тринадцатый) – Charles, Mason.

Замена слова (словосочетания) символьной строкой фиксированной длины стеганографический Аналог - . 1. Американский код для окопов (1918 г.): Patrol (патруль) – RAL; Attack (атака) – DIT.

2. Код Госдепартамента А-1 (1919 г.): Diplomat (дипломат) – BUJOH; Diplomatic corps (дипломатический корпус) – BEDAC.

Замена слова (словосочетания) числом стеганографический Аналог - .
Для одного кодируемого слова могли использоваться несколько кодовых обозначений.
1. Номенклатор Бенджамина Толмаджа (1779 г.): Defense (оборона) – 143; Attack (атака) – 38.

2. Код вещания для торговых судов союзников во Второй мировой войне (BAMS): остров – 36979; порт – 985.

Замена слова (словосочетания) набором цифр фиксированной длины стеганографический Аналог - . 1. Американский код для окопов (1918 г.): Patrol (патруль) – 2307; Attack (атака) – 1447.

2. Американский служебный радиокод № 1 (1918 г.): Oil (масло) – 001; Bad (плохой) – 642.

Замена букв криптографический Аналоги – шифр , .
В качестве кодового обозначения могли использоваться буквы, числа, графические обозначения.
Применялась для слов, отсутствующих в списке кодируемых.
1. Номенклатор города Сиены (XV в.): q – ; s – .

2. Номенклатор Джеймса Мэдисона (1781 г.): o – 527; p – 941.

3. Американский код для окопов (1918 г.): a – 1332 .. 2795 или CEW .. ZYR. Содержал также 30 алфавитов шифрозамен для перешифрования кодовых обозначений.

Замена сочетания букв криптографический Аналог – .
В качестве кодового обозначения могли использоваться буквы, числа, графические обозначения.
1. Номенклатор города Сиены (XV в.): bb – ; tt – .

2. Номенклатор X-Y-Z (1737 г.): ce – 493; ab – 1194.

Использование пустых знаков стеганографический Аналог – .
Ничего назначавшие (лат. nihil importantes) символы использовались для запутывания криптоаналитиков.
1. Номенклатор города Сиены (XV в.): , .

2. Речные коды: Потомак (1918 г.): ASY.

Использование аддитивных чисел криптографический Аналог – .
Аддитивное число, добавляемое к числовому кодовому обозначению, служило в качестве переменной части кода (ключа).
Шифр Госдепартамента 1876 г.: правило «Horse» (лошадь) в начале сообщения означало, что при кодировании последующих кодовых обозначений использовалось аддитивное число 203; «Hawk» (ястреб) - 100.
Перестановка букв (цифр) в кодовых обозначениях криптографический Аналог – . Телеграфный код для обеспечения секретности при передаче телеграмм (1870 г.): одно из правил предписывало перестановку последних трех цифр в цифровом кодовом обозначении, состоящем из пяти цифр.
Перестановка кодовых обозначений криптографический Аналог – . Шифр Госдепартамента 1876 г.: правило «Tiger» (тигр) в начале сообщения означало, что раскодированное сообщение надо читать с последнего слова по первое (задом-наперед); «Tapir» (тапир) – меняя местами каждую пару слов (т.е. первое и второе, третье и четвертое и т.д.).

Сочетание различных способов кодирования и перешифровки в кодовой системе было обычной практикой у разработчиков кодов и стало применяться практически с самого начала их появления. Так, еще в номенклаторе, использовавшемся в г. Сиена в XV в., помимо кодовых замен слов, применялись для замены букв, их и пустых знаков. Наибольшего расцвета эта практика получила в конце XIX – начале XX вв. В частности в «Шифре Госдепартамента 1876 г.» (англ. Red Book – Красная книга), состоящем из 1200 страниц, и его дополнении «Неподдающийся декодированию код: дополнение к шифру Госдепартамента» применялись:

Кодовые обозначения в виде слов и чисел;