В чем заключается кодирование информации

Кодирование для чайников, ч.1

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

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

0. Начало

Давайте рассмотрим некоторые более подробно.

1.1 Речь, мимика, жесты

1.2 Чередующиеся сигналы

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

В чем заключается кодирование информации. image loader. В чем заключается кодирование информации фото. В чем заключается кодирование информации-image loader. картинка В чем заключается кодирование информации. картинка image loader

1.3 Контекст

2. Кодирование текста

Текст в компьютере является частью 256 символов, для каждого отводится один байт и в качестве кода могут быть использованы значения от 0 до 255. Так как данные в ПК представлены в двоичной системе счисления, то один байт (в значении ноль) равен записи 00000000, а 255 как 11111111. Чтение такого представления числа происходит справа налево, то есть один будет записано как 00000001.

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

Тестовая фраза «ЕХАЛ ГРЕКА ЧЕРЕЗ РЕКУ ВИДИТ ГРЕКА В РЕЧКЕ РАК СУНУЛ ГРЕКА РУКУ В РЕКУ РАК ЗА РУКУ ГРЕКУ ЦАП».

В чем заключается кодирование информации. image loader. В чем заключается кодирование информации фото. В чем заключается кодирование информации-image loader. картинка В чем заключается кодирование информации. картинка image loader

2.1 Блочное кодирование

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

Источник

Информатика

Именная карта банка для детей
с крутым дизайном, +200 бонусов

Закажи свою собственную карту банка и получи бонусы

План урока:

Примеры кодирования информации:

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

Информация проходит кодирование в целях:

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

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

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

Разработанная в 1948г. К. Шенноном «Теория информации и кодирования» стала основополагающей в современном кодировании данных.

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

Способы кодировки

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

По принципу представления все информационные сведения можно классифицировать на следующие группы:

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

Соответственно происходит и классификация информации по способу кодирования:

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

Самыми распространенными видами кодировок информации являются следующие:

Различают такие методы кодирования информации как:

Двоичный код

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

Двоичное кодирование информации применяется для различных данных:

Обработка графических изображений

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

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

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

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

Способы кодирования графической информации подчиняются методам представления изображений (растрового или векторного):

В чем заключается кодирование информации. 11vmi2. В чем заключается кодирование информации фото. В чем заключается кодирование информации-11vmi2. картинка В чем заключается кодирование информации. картинка 11vmi2
Источник

Многим станет интересно: «В чем суть кодирования графической информации, представленной в виде 3D-изображений?» Дело в том, что работа с трехмерными данными сочетает способы растровой и векторной кодировки.

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

Метод координат

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

Метод координат на плоскости основан на изучении свойств точки в системе координат с горизонтальной осью Ox и вертикальной осью Oy. Точка будет иметь 2 координаты.

Если через начало координат проходит 3 взаимно перпендикулярные оси X, Y и Z, то используется метод координат в пространстве. Положение точки в таком случае определяется тремя координатами.

Система координат в пространстве

Перевод чисел в бинарный код

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

Привычная человеку система счисления (основанная на цифрах от 0 до 9), которой мы активно пользуемся, появилась несколько сотен тысяч лет назад. Работа всей вычислительной техники организована на бинарной системе счисления. Алфавитом у нее минимальный – 0 и 1. Кодировка чисел совершается путем перехода из десятичной в двоичную систему счисления и выполнении вычислений непосредственно с бинарными числами.

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

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

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

Рассмотрим подробнее самые распространенные стандарты ASCII и Unicode – то, что применяется для кодирования символьной информации во всем мире.

Фрагмент таблицы ASCII

Первоначально было установлено, что для любого знака отводится в памяти компьютера 8 бит (1 бит – это либо «0», либо «1») бинарной последовательности. Первая таблица кодировки ASCII (переводится как «американский кодовый стандарт обмена сообщениями») содержала 256 символов. Ограниченная численность закодированных знаков, затрудняющая межнациональный обмен данными, привела к необходимости создания стандарта Unicode, основанного на ASCII. Эта международная система кодировки содержит 65536 символов. Закодировать огромное количество всевозможных обозначений стало возможным благодаря использованию 16-битного символьного кодирования.

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

Выбирать способ кодирования информации – графический, числовой или символьный необходимо отталкиваясь от цели кодировки. Например, число «21» можно ввести в компьютерную память цифрами или буквами «двадцать один», слово «ЗИМА» можно передать русскими буквами «зима» или латинскими «ZIMA», штрих-код товара передается изображением и цифрами.

Преобразование звука

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

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

Преобразование звука: а) аналоговый сигнал; б)дискретный сигнал.

Различают следующие методы кодирования звуковой информации:

Обработка текста

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

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

В задачах на кодирование текстовой информации часто встречаются следующие понятия:

Например, мощность алфавита ASCII составляет 256 символов. При этом один знак занимает 8 бит (или 1 байт) памяти, а Unicode – 35536 символов и 16 бит (или 2 байта) соответственно.

Источник

В чем заключается кодирование информации

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

Это свет, звук, запах, касания; это слова, значки, символы, жесты и движения.

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

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

телефонный звонок — кому-то нужно с нами поговорить;

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

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

Код — это система условных знаков для представления информации.

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

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

Обратное преобразование называется декодированием.

Декодирование — это процесс восстановления содержания закодированной информации.

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

Существует три основных способа кодирования информации:

●Числовой способ — с помощью чисел.

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

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

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

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

Однозначно декодировать –получить один единственный точный вариант.

Двоичное кодирование информации в компьютере.

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

· электромагнитные реле (замкнуто/разомкнуто), широко использовались в конструкциях первых ЭВМ;

· участок поверхности магнитного носителя информации (намагничен/размагничен);

· участок поверхности лазерного диска (отражает/не отражает);

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

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

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

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

2) КОИ-8 (Код Обмена Информацией, восьмизначный) – другая популярная кодировка российского алфавита, распространенная в компьютерных сетях.

3) ISO (InternationalStandardOrganization – Международный институт стандартизации) – международный стандарт кодирования символов русского языка. На практике эта кодировка используется редко.

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

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

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

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

В основу кодирования цветных графических изображений положен принцип разложения произвольного цвета на основные составляющие, в качестве которых применяются три основных цвета: красный (Red), зеленый (Green) и синий (Blue). На практике принимается, что любой цвет, который воспринимает человеческий глаз, можно получить с помощью механической комбинации этих трех цветов. Такая система кодирования называется RGB. При применении 24 двоичных разрядов для кодирования цветной графики такой режим носит название полноцветного (TrueColor).

Для любого из основных цветов дополнительным будет являться цвет, который образован суммой пары остальных основных цветов. Соответственно среди дополнительных цветов можно выделить голубой (Cyan), пурпурный (Magenta) и желтый (Yellow). Принцип разложения произвольного цвета на составляющие компоненты используется не только для основных цветов, но и для дополнительных. Этот метод кодирования цвета применяется в полиграфии, но там используется еще и четвертая краска – черная (Black), поэтому эта система кодирования обозначается четырьмя буквами – CMYK. Для представления цветной графики в этой системе применяется 32 двоичных разряда. Данный режим также носит название полноцветного.

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

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

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

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

Множество кодов очень прочно вошло в нашу жизнь.

●числовая информация кодируется арабскими, римскими цифрами и др.

●для общения и письма мы используем код — русский язык, в Китае — китайский и т.д.

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

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

Для передачи информации, людьми были придуманы специальные коды, к ним относятся:

Источник

В чем заключается кодирование информации

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

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

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

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

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

— ситуации и явления;

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

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

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

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

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

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

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

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

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

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

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

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

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

22.2. Общедоступные кодовые системы

В качестве других распространенных кодовых систем можно привести:

— обозначение химических элементов из периодической таблицы Дмитрия Ивановича Менделеева;

— сокращенные наименования дисциплин в расписании занятий студентов.

Ниже приводится описание других общедоступных кодовых систем в целях иллюстрации многообразия их назначения и способов представления кодовых обозначений [17].

Русская
буква
Латинская
буква
Код МорзеРусская
буква
Латинская
буква
Код МорзеСимволКод Морзе
AA· —РR· — ·1· — — — —
БB— · · ·СS· · ·2· · — — —
ВW· — —ТT3· · · — —
Г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 гг.). Он плохо слышал и общался со своей женой, Мэри Стиуэлл, с помощью азбуки Морзе. Во время ухаживания Эдисон сделал предложение, отстучав слова рукой, и она ответила тем же способом. Телеграфный код стал обычным средством общения для супругов. Даже когда они ходили в театр, Эдисон клал руку Мэри себе на колено, чтобы она могла «телеграфировать» ему диалоги актеров [44].

Управляющие символы
Двоичный
код
Десятичный
код
Назначение
010008Возврат каретки
000102Перевод строки
1111131Буквы латинские
1101127Цифры
001004Пробел
000000Буквы русские
Буквы, цифры и остальные символы
Двоичный
код
Десятичный
код
Латинская
буква
Русская
буква
Цифры и
прочие символы
000113AА
1100125BБ?
0111014CЦ:
010019DДКто там?
000011EЕЗ
0110113FФЭ
1101026GГШ
1010020HХЩ
001106IИ8
0101111JЙЮ
0111115KК(
1001018LЛ)
1110028MМ.
0110012NН,
1100024OО9
1011022PП0
1011123QЯ1
0101010RР4
001015SС
1000016TТ5
001117UУ7
1111030VЖ=
1001119WВ2
1110129XЬ/
1010121YЫ6
1000117ZЗ+

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

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

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

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

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

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

Кодировка ASCIIДополнительные символы
Двоичный
код
Десятичный
код
СимволДвоичный
код
Десятичный
код
СимволДвоичный
код
Десятичный
код
СимволДвоичный
код
Десятичный
код
Символ
000000000NUL0100000064@10000000128Ђ11000000192А
000000011SOH0100000165A10000001129Ѓ11000001193Б
000000102STX0100001066B1000001013011000010194В
000000113ETX0100001167C10000011131ѓ11000011195Г
000001004EOT0100010068D1000010013211000100196Д
000001015ENQ0100010169E1000010113311000101197Е
000001106ACK0100011070F1000011013411000110198Ж
000001117BEL0100011171G1000011113511000111199З
000010008BS0100100072H1000100013611001000200И
000010019HT0100100173I1000100113711001001201Й
0000101010LF0100101074J10001010138Љ11001010202К
0000101111VT0100101175K1000101113911001011203Л
0000110012FF0100110076L10001100140Њ11001100204М
0000110113CR0100110177M10001101141Ќ11001101205Н
0000111014SO0100111078N10001110142Ћ11001110206О
0000111115SI0100111179O10001111143Џ11001111207П
0001000016DLE0101000080P10010000144ђ11010000208Р
0001000117DC10101000181Q1001000114511010001209С
0001001018DC20101001082R1001001014611010010210Т
0001001119DC30101001183S1001001114711010011211У
0001010020DC40101010084T1001010014811010100212Ф
0001010121NAK0101010185U1001010114911010101213Х
0001011022SYN0101011086V1001011015011010110214Ц
0001011123ETB0101011187W1001011115111010111215Ч
0001100024CAN0101100088X1001100015211011000216Ш
0001100125EM0101100189Y1001100115311011001217Щ
0001101026SUB0101101090Z10011010154љ11011010218Ъ
0001101127ESC0101101191[1001101115511011011219Ы
0001110028FS0101110092\10011100156њ11011100220Ь
0001110129GS0101110193]10011101157ќ11011101221Э
0001111030RS0101111094^10011110158ћ11011110222Ю
0001111131US0101111195_10011111159џ11011111223Я
00100000320110000096`1010000016011100000224а
0010000133!0110000197a10100001161Ў11100001225б
0010001034«0110001098b10100010162ў11100010226в
0010001135#0110001199c10100011163Ј11100011227г
0010010036$01100100100d10100100164¤11100100228д
0010010137%01100101101e10100101165Ґ11100101229е
0010011038&01100110102f10100110166¦11100110230ж
001001113901100111103g10100111167§11100111231з
0010100040(01101000104h10101000168Ё11101000232и
0010100141)01101001105i10101001169©11101001233й
0010101042*01101010106j10101010170Є11101010234к
0010101143+01101011107k10101011171«11101011235л
0010110044,01101100108l10101100172¬11101100236м
001011014501101101109m10101101173¬11101101237н
0010111046.01101110110n10101110174®11101110238о
0010111147/01101111111o10101111175Ї11101111239п
0011000048001110000112p10110000176°11110000240р
0011000149101110001113q10110001177±11110001241с
0011001050201110010114r10110010178І11110010242т
0011001151301110011115s10110011179і11110011243у
0011010052401110100116t10110100180ґ11110100244ф
0011010153501110101117u10110101181µ11110101245х
0011011054601110110118v1011011018211110110246ц
0011011155701110111119w10110111183·11110111247ч
0011100056801111000120x10111000184ё11111000248ш
0011100157901111001121y1011100118511111001249щ
0011101058:01111010122z10111010186є11111010250ъ
0011101159;01111011123 <10111011187»11111011251ы
00111100600111111012610111110190ѕ11111110254ю
0011111163?01111111127DEL10111111191ї11111111255я

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

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

Для изображения символов (в основном букв и цифр) в шрифте Брайля используются 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г.

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

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

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

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

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

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

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

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

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

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

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

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

X – Y5 – 56 – 55 – 65 – (-6)
X200000101000001100000010100000101
Y200000101000001010000011011111001
Замена сложением5 + (-5)6 + (-5)5 + (-6)5 + 6
Обратный код для вычитаемого (-Y2)11111010111110101111100100000110
Сложение00000101
+
11111010
11111111
00000110
+
11111010
100000000
00000101
+
11111001
11111110
00000101
+
00000110
00001011
Отбрасывание старшего разряда и добавление 12не требуется00000000
+
00000001
00000001
не требуетсяне требуется
Результат-01-111

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

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

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

Десятичное
представление
Код двоичного представления (8 бит)
прямойобратныйдополнительный
127011111110111111101111111
6000001100000011000000110
5000001010000010100000101
1000000010000000100000001
0000000000000000000000000
-01000000011111111
-1100000011111111011111111
-5100001011111101011111011
-6100001101111100111111010
-127111111111000000010000001
-12810000000

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

X – Y5 – 56 – 55 – 65 – (-6)
X200000101000001100000010100000101
Y200000101000001010000011011111010
Замена сложением5 + (-5)6 + (-5)5 + (-6)5 + 6
Дополнительный код для вычитаемого (-Y2)11111011111110111111101000000110
Сложение00000101
+
11111011
00000000
00000110
+
11111011
100000001
00000101
+
11111010
11111111
00000101
+
00000110
00001011
Отбрасывание старшего разряда и добавление 12не требуется00000001не требуетсяне требуется
Результат-01-111

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

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

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

bbn7bn6bn5bn4bn3bn2bn1bbm15bm14bm13bm12bm11bm10bm9bm8bm7bm6bm5bm4bm3bm2bm1
знаквеличиназнаквеличина
порядокмантисса

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

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

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

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

000010000010111100000000
знак
+
величина
2 8
знак
+
величина
(1) + 0.3671875
порядокмантисса

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

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

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

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

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

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

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

В заключение по числам с плавающей запятой несколько слов о пресловутой «ошибке округления». Т.к. в двоичной форме представления числа хранится только несколько значащих цифр, она не может «покрыть» все многообразие вещественных чисел в заданном диапазоне. В результате, если число невозможно точно представить в двоичной форме, оно представляется ближайшим возможным. Например, если к числу типа 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)

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

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

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

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

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

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

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

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

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

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

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

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

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

— 30 шифралфавитов для замены букв;

— 50 правил перешифрования, включая аддитивные числа, перестановки кодовых обозначений и их частей.

В дополнении к «Шифру Госдепартамента 1899 г.» (англ. Blue Book – Синяя книга) были описаны еще 25 дополнительных правил перешифрования: изменение направления чтения и записи, прибавление или вычитание чисел, замена кодовых чисел другими кодовыми числами.

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

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

Источник

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *