Лекция № 1 Тема: Введение. Понятие информации. Информация и данные. 1. Понятие информации Вопрос о сущности информации возникает у учителей и преподавателей, когда надо ученику объяснить, почему в учебниках такое разнообразие, информация – это свойство материи, сигнал, знания, байт, символ, смысл, данные и вообще неопределяемое понятие. Информацию можно определить как набор сообщений об объектах и явлениях окружающей среды, их параметрах, свойствах и состоянии, которые уменьшают имеющуюся о них степень неопределенности и не полноты знаний. Термин информация происходит от латинского informatio, что означает разъяснение, осведомление, изложение. Сообщение в свою очередь является формой представления информации в виде речи, текста, изображения, графиков, таблиц, видеоизображения, звука и т. п. В широком смысле информация – это общенаучное понятие, включающее в себя обмен сведениями между людьми, людьми и машинами, живой и не живой природой. Данное определение не претендует на полноту и законченность так как информация относится к наиболее фундаментальным понятиям таким как материя, поле, энергия, которые лишь описываются и трактуются. Информация, как любой объект или явления, имеет три составляющие: сущность, определение и термин. Рассмотрим гипотезу, основанную на разделении понятия «информация» на два: «данные» и «смысл», т.к. смысл в этой паре является главным, то смысл, назовем «информацией». С точки зрения философии информация – наиболее общее понятие наряду с материей. Можно сказать, что она отражает организацию материи. При этом информация не только пассивно характеризует структуру материи, но и способна активно создавать и воспроизводить эту структуру. Например, любой созданный человеком объект первоначально существует в виде идеи (образа) в голове его творца, а свойства самого человека в значительной степени запрограммированы информацией, хранящейся в его геноме. “Антиподом” информации, характеризующей стуктурированность материи является энтропия, которая отражает ее неупорядоченность (“хаоc”). Упорядоченность и хаос (и, соответственно, энтропия и информация) в видимой вселенной непрерывно перетекают друг в друга: например, строить – означает упорядочивать, а разрушать – вносить беспорядок. Но “есть время собирать камни и время разбрасывать камни”. Исходя из этого существует предположение о “законе сохранения” количества информации во Вселенной. Однако, есть и прямо противоположная точка зрения: след всего, что происходит, неуничтожим на “тонких уровнях” организации материи, так что информация постоянно накапливается. 2 Информация в адаптивной системе Упомянутый выше подход к информации можно считать наиболее общим, однако, он мало что дает в практическом плане. Понятия количества, значения и ценности информации приобретают смысл, если в рассмотрении появляется субъект – система, которая эту информацию использует. Такой системой может быть, например, живой организм, сообщество людей или компьютер, управляющий некоторым агрегатом. Система всегда существует в определенной среде. Чтобы решать свои задачи она должна иметь собственную модель среды и постоянно корректировать ее на основе получаемых сведений (адаптировать). В рамках такого подхода информация есть «представление субъекта об окружающей среде». Напротив, энтропия – неопределенность в таком представлении. Появление новых сведений снимает часть неопределенности и энтропия (“незнание”) заменяется информацией (“знанием”). Обратите внимание, что информация (как “представления субъекта”) сама по себе не материальна, однако, она всегда имеет материальные носители: сигналы, которые ее переносят или параметры элементов, с помощью которых она хранится. Сигналы служат носителями информации при восприятии ее из среды и при передаче от одного субъекта другому (при этом “другой субъект” представляется во “внутренней модели”, как элемент среды). Обратите внимание, что из многообразных физических воздействий среды на субъекта сигналами будут лишь те, из которых субъект получает информацию. Контрольные вопросы: 1. Что понимают под информацией? 2. Что такое «информация» с точки зрения философии? 3. Какое понятие является антиподом информации? 4. Дайте пояснение понятию «модель среды». 5. Для чего служат сигналы? Лекция № 2 Тема: Виды и формы представления информации. Свойства информации. Формы представления информации Для человека, как существа общественного, принципиально необходимо обмениваться информацией с себе подобными. Именно способность накапливать, передавать и воспринимать опыт других и сделала его Человеком. При этом по мере развития культуры люди изобретали все более изощренные и разнообразные средства хранения, передачи, а затем и обработки информации. Классификация основных форм представления информации, используемых человеком для ее передачи и хранения. 1 Символьная информация. Понятие о знаках и знаковых системах Знаки представляют материальное замещение понятий, которыми человек пользуется, чтобы упорядочить и упростить свои представления о внешнем мире (так, понятие “человек” обобщает множество индивидуальностей разного возраста, пола, расы и т.д., а этому понятию может соответствовать определенный знак, например, пиктограмма). Обычно знаки образуют систему. Примером знаковой системы являются различные языки – от живого языка человеческого общения до алгоритмического языка для записи программ или языка химических формул. Другие примеры – набор цветов светофора, знаков дорожного движения и т.д. Существуют и внесистемные знаки, которые обычно тоже являются «обломками» знаковых систем (например жесты или междометия). По своей природе знаковые системы дискретны, то-есть, используют ограниченный набор элементов. Другой аспект – связь формы знака и его смысла. Знаки, форма (вид), которых непосредственно связана с их смыслом называют символами. Таковы, например, гербы и пиктограммы. Если подобная связь отсутствует (как в случае слов естественного языка или знаков математических операций), знаки называют диакритиками. Обычно знаковые системы состоят из диакритических знаков, хотя в ряде случаев можно проследить их символические корни (например, некоторых букв и иероглифов). Законы построения знаковых систем изучает семиотика, которая включает ряд направлений. Синтактика занимается правилами соединения знаков (например, построения фраз). Семантика изучает смысл – соответствие знака (слова) и понятия. Фраза «Глокая куздра штеко будланула бокра и кудлачит бокренка» построена синтаксически верно, однако она бессмысленна, поскольку словам не соответствуют понятия. Прагматика занимается полезностью и истинностью. Фраза «Сегодня хорошая погода» синтаксически правильна и семантически корректна. Однако истинность и ценность информации, которую она передает, зависит от конкретных условий. Сигматика изучает вопросы обозначений. В нашем курсе использование знаков рассматривается с точки зрения передачи информации. С этих позиций они представляют собой условное изображение элементов сообщения. Типичный случай сообщения, ссотоящего из знаков – текст. 2 Графическая информация. Понятие о спектре непрерывных сообщений Графическая форма представления удобна для отображения информации, которую человек непосредственно, без логической обработки, получает по зрительному каналу (изображения). Она хорошо подходит также для передачи особенностей непрерывных по своей природе сигналов (например, звуковых), а в общем виде – непрерывных зависимостей . Типичный вариант графического отображения непрерывной зависимости (например, изменения некоего сигнала во времени) показан на Рис. 1. Если учесть, что любой цветовой сигнал может быть представлен как наложение трех цветов (в частности, красного, зеленого и голубого), то изменение цвета точки изображения также можно представить тремя аналогичными зависимостями. Таким образом, подобный подход достаточно универсален. Зачастую меняющаяся во времени величина сохраняет некоторые стабильные характеристики, в частности, мощность различных частотных составляющих (которым соответствуют участки кривой с разной скоростью изменения амплитуды). Такой “частотный портрет” непрерывной зависимости называется спектром. На рис. 2 приведены несколько примеров спектров – постоянного сигнала (его “частота” равна 0), гармоники (у которой, разумеется, одна частота) и сложного апериодического сигнала. В дальнейшем мы вернемся к детальному изучению спектров различных сигналов, используемых при передаче информации по линиям связи. Здесь же уместно отметить следующее: для реальных сигналов, скорость изменения которых конечна, всегда существует некоторая граничная частота спектра fm, соответствующая его самой высокочастотной составляющей. 3 Параметрическая (числовая) информация. Дискретизация непрерывных сообщений Для представления количественной информации чаще всего используются числа. По сравнению с представлением величин непрерывными зависимостями они дают значительные преимущества в возможностях обработки и хранения информации. Именно поэтому непрерывные сообщения часто “оцифровывают”, то есть представляют как последовательность чисел. Числовая информация, как и символьная, по своей природе дискретна, так как она может быть представлена ограниченным набором символов (в частности, цифр). На Рис.1 показана дискретизация непрерывной зависимости U(t). Она включает две составляющих: дискретизацию по времени с шагом t; дискретизацию (квантование) по уровню с шагом U. Благодаря этим двум этапам всю зависимость U(t) можно представить как последовательность дискретных значений, которым соответствуют числа. Очевидно, что точность дискретизации по уровню может быть выбрана как угодно большой Важно, что непрерывную информацию с помощью оцифровки (дискретизации) принципиально в любом случае можно представить, как дискретную с любой необходимой точностью. В то-же время, обратное преобразование иногда невозможно (например, для символов). Таким образом, дискретная форма представления информации является наиболее общей. U(t) Δ Рис. 1 t В соответствие с формами представления информации выделяют и типы дискретных и непрерывных сообщений. Первые состоят из знаков, принадлежащих к определенному алфавиту. Вторые включают непрерывно меняющиеся во времени величины. Принципиально важно, что непрерывная информация в любом случае могут быть преобразована к дискретной, тогда как обратное преобразование возможно не всегда. Действительно, непрерывную зависимость некоторых величин можно дискретизировать, если задавать их соответствие в ограниченном наборе точек. При этом точность такого преобразования принципиально может быть задана достаточно высокой, чтобы не потерять информацию. А вот однозначно восстановить неизвестную кривую по ограниченному набору точек возможно не всегда. Мы будем рассматривать дискретную форму представления информации, как основную. Контрольные вопросы: 1. Правилами соединения знаков занимется… 2. Какой раздел науки занимается изучением смысла – соответствия знака (слова) и понятия. 3. Что занимается полезностью и истинностью информации? 4. Какими вопросами занимается сигматика? 5. Чем удобно графическое представление информации? Лекция № 3 Тема: Формы адекватности информации. 1. Основные виды обработки данных Представим основные компоненты информационной технологии обработки данных и приведем их характеристики. Сбор данных. По мере того как фирма производит продукцию или услуги, каждое её действие сопровождается соответствующими записями данных. Обычно действия фирмы, затрагивающие внешнее окружение, выделяются особо как операции, производимые фирмой. Обработка данных. Для создания из поступающих данных информации, отражающей деятельность фирмы, используются слежующие типовые операции: Классификация или группировка. Первичные данные обычно имеют вид кодов, состоящих из одного или нескольких символов. Эти коды, выражающие определенные признаки объектов, используются для идентификации и группировки записей; Пример. При расчете заработной платы каждая запись включает в себя код (табельный номер) работника, код подразделения, в котором он работает, занимаемую должность и т.п. В соответствии с этими кодами можно произвести разные группировки. Сортировка, с помощью которой упорядочивается последовательность записей; Вычисления, включающие арифметические и логические операции. Эти операции, выполняемые над данными, дают возможность получать новые данные; Укрупнение или агрегирование, служащее для уменьшения количества данных и реализуемое в форме расчетов итоговых и средних значений. Хранение данных. Многие данные на уровне операционной деятельности необходимо сохранить для последующего использования либо здесь же. Либо на другом уровне. Для их хранения создаются базы данных. Создание отчетов (документов). В информационной технологии обработки данных необходимо создавать документы для руководства и работников фирмы, а также для внешних партнеров. При этом документы могут создаваться как по запросу или в связи с проведенной фирмой операцией, так и периодически в конце каждого месяца, квартала или года. 2. Обработка аналоговой и цифровой информации По принципу действия вычислительные машины делятся на три большие класса: аналоговые (АВМ), цифровые (ЦВМ) и гибридные (ГВМ). Аналоговые вычислительные машины (АВМ) – вычислительные машины непрерывного действия, работают с информацией, представленной в непрерывной (аналоговой) форме, т.е. в виде непрерывного ряда значений какой-либо физической величины (чаще всего электрического напряжения). Аналоговые вычислительные машины весьма просты и удобны в эксплуатации; программирование задач для решения на них, как правило, нетрудоемкое; скорость решения задач изменяется по желанию оператора и может быть сделана сколь угодно большой (больше, чем у ЭВМ), но точность решения задач очень низкая (относительная погрешность 2-5%). На АВМ наиболее эффективно решать математические задачи, содержащие диференциальные уравнения, не требующие сложной логики. Цифровые вычислительные машины (ЦВМ) – вычислительные машины дискретного действия, работают с информацией, представленной в дискретной, а точнее, в цифровой форме Гибридные вычислительные машины (ГВМ) – вычислительные машины комбинированного действия, работают с информацией, представленной и в цифровой, и в аналоговой форме; они совмещают в себе достоинства АВМ и ЦВМ. ГВМ целесообразно использовать для решения задач управления сложными быстродействующими техническими комплексами. Наиболее широкое применение получили ЦВМ с электрическим представлением дискретной информации – электронные цифровые вычислительные машины, обычно называемые просто электронными вычислительными машинами (ЭВМ), без упоминания об их цифровом характере. Электронная вычислительная машина, компьютер – комплекс технических средств, предназначенных для автоматической обработки информации в процессе решения вычислительных и информационных задач. Контрольные вопросы: 1. Какие основные методы обработки информации существуют? 2. Какие машины называются аналоговыми? 3. Какие машины называются цифровыми? 4. Какие машины называются гибридными? 5. Дайте определение ЭВМ. Лекция № 4 Тема: Системы счисления. Непозиционные и позиционные системы счисления. 1. Позиционные и непозиционные системы счисления Системой счисления называется совокупность приемов и правил для записи чисел цифровыми знаками. Любая предназначенная для практического применения система счисления должна обеспечивать: возможность представления любого числа в рассматриваемом диапазоне величин; единственность представления (каждой комбинации символов должна соответствовать одна и только одна величина); простоту оперирования числами. Все системы представления чисел делят на позиционные и непозиционные. Непозиционная система счисления – система, для которой значение символа не зависит от его положения в числе. Для их образования используют в основном операции сложения и вычитания. Например, система с одним символом-палочкой встречалась у многих народов. Для изображения какого-то числа в этой системе нужно записать количество палочек, равное данному числу. Эта система неэффективна, так как запись числа получается длинной. Другим примером непозиционной системы счисления является римская система, использующая набор следующих символов: I, V, X, L, C, D, M и т. д. В этой системе существует отклонение от правила независимости значения цифры от положения в числе. В числах LX и XL символ X принимает два различных значения: +10 – в первом случае и –10 – во втором случае. Позиционная система счисления – система, в которой значение символа определяется его положением в числе: один и тот же знак принимает различное значение. Например, в десятичном числе 222 первая цифра справа означает две единицы, соседняя с ней – два десятка, а левая – две сотни. Любая позиционная система характеризуется основанием. Основание (базис) позиционной системы счисления – количество знаков или символов, используемых для изображения числа в данной системе. Для позиционной системы счисления справедливо равенство A a qn a q n 1 ... a q1 a q 0 a q 1 ... a q m, (q) n n 1 1 0 1 m (1) где A(q) – произвольное число, записанное в системе счисления с основанием q; ai – коэффициенты ряда (цифры системы счисления); n, m – количество целых и дробных разрядов. На практике используют сокращенную запись чисел: (2) A a a ...a a a ...a . ( q) n n1 1 0 1 m Например: а) в двоичной системе (q=2) 11010.1012 = 1 · 24 + 1 · 23 + 0 · 22 + 1 · 21 + 0 · 20 + 1 · 2-1 + 0 · 2-2 + 1 · 2-3; б) в троичной системе (q=3) 22120.2123 = 2 · 34 + 2 · 33 + 1 · 32 + 2 · 31 + 0 · 30 + 2 · 3-1 + 1 · 3-2 + 2 · 3-3; в) в шестнадцатиричной системе (q=16) A3F.1CD16 = A · 162 + 3 · 161 + F · 160 + 1 · 16-1 + C · 16-2 + D · 16-3. Контрольные вопросы: 1. Что обеспечивает система счисления? 2. Какая система счисления называется позиционной? 3. Какая система счисления называется непозиционной? 4. Какое равенство отожествляется с позиционной системой счисления? 5. Приведите примеры позиционных и непозиционных систем счисления. Лекция № 5 Тема: Недесятичная арифметика и её правила. 1. Двоичная арифметика Арифметические операции во всех позиционных системах счисления выполняются по одним и тем же хорошо известным вам правилам. Сложение. Рассмотрим сложение чисел в двоичной системе счисления. В его основе лежит таблица сложения одноразрядных двоичных чисел: 0+0=0 0+1=1 1+0=1 1+1=10 Важно обратить внимание на то, что при сложении двух единиц происходит переполнение разряда и производится перенос в старший разряд. Переполнение разряда наступает тогда, когда величина числа в нем становится равной или большей основания. Сложение многоразрядных двоичных чисел происходит в соответствии с вышеприведенной таблицей сложения с учетом возможных переносов из младших разрядов в старшие. В качестве примера сложим в столбик двоичные числа 1102 и 112 : 1102 + 112 10012 Проверим правильность вычислений сложением в десятичной системе счисления. Переведем двоичные числа в десятичную систему счисления и затем их сложим: 1102=1*22 + 1*21+ 0*20 = 610; 112 = 1*21 + 1*20 = 310; 610 + 310 = 910. Теперь переведем результат двоичного сложения в десятичное число: 10012 = 1*23 +0*22 + 0*21 + 1*20 = 910/ Сравним результаты – сложение выполнено правильно. Вычитание. Рассмотрим вычитание двоичных чисел. В его основе лежит таблица вычитания одноразрядных двоичных чисел. При вычитании из меньшего числа (0) большего (1) производится заем из старшего разряда. В таблице заем обозначен 1 с чертой: 0-0 =_0 0-1 =11 1-0 = 1 1-1 = 0 Вычитание многоразрядных двоичных чисел происходит в соответствии с вышеприведенной таблицей вычитания с учетом возможных заемов из старших разрядов. В качестве примера произведем вычитание двоичных чисел 1102 и 112: 1102 112 112 Умножение. В основе умножения лежит таблица умножения одноразрядных двоичных чисел: 0 *0 = 0 0 *1 = 0 1 *0 =0 1 * 1 =1 Умножение многоразрядных двоичных чисел происходит в соответствии с вышеприведенной таблицей умножения по обычной схеме, применяемой в десятичной системе счисления с последовательным умножением множимого на цифры множителя. В качестве примера произведем умножение двоичных чисел и: 1102 x 112___ 110 110____ 100102 Деление. Операция деления выполняется по алгоритму, подобному алгоритму выполнения операции деления в десятичной системе счисления. В качестве примера произведем деление двоичного числа 1102 и 112: 1102 112___ 102 11 0 Контрольные вопросы: 1. Какая арифметика называется недесятичной? 2. Как производится сложение, вычитание, умножение, и деление в двоичной системе счисления? 3. Как производится сложение, вычитание, умножение, и деление в восьмеричной системе счисления? 4. Как производится сложение, вычитание, умножение, и деление в шестнадцатеричной системе счисления? Лекция № 6 Тема: Перевод чисел из заданной системы в другую. 1. Методы перевода чисел Числа в разных системах счисления можно представить следующим образом: A a qn a q n 1 ... a q1 a q 0 a q 1 ... a q m (q ) n 1 n 1 1 1 1 0 1 1 1 m 1 1 b q k 1 ... b q1 b q 0 b q 1 ... b q s A k 1 2 1 2 0 2 1 2 s 2 (q ) 2 где A a qn a qn 1 ... a q1 a q0 a q 1 ... a q m (q) n n 1 1 0 1 m Значит, в общем виде задачу перевода числа из системы счисления с основанием q1 в систему счисления с основанием q2 можно представить как задачу определения коэффициентов bj нового ряда, изображающего число в системе с основанием q2. В такой постановке задачу перевода можно решить подбором коэффициентов bj. Перевод чисел делением на основание новой системы Перевод целых чисел осуществляется делением на основание q2 новой системы счисления, правильных дробей – умножением на основание q2. Действия деления и умножения выполняются по правилам q1-арифметики. Перевод неправильных дробей осуществляется раздельно по указанным правилам, результат записывается в виде новой дроби в системе с основанием q2. Пример 1. Перевести десятичное число A = 6110 в систему счисления с q = 2. 61 60 b0 = 1 |2 30 |2 30 15 b1 = 0 14 b2 = 1 |2 7 6 b3 = 1 |2 3 2 b4 = 1 |2 1 = b5 Ответ: 6110 = 1111012. Табличный метод перевода В простейшем виде табличный метод заключается в следующем: имеется таблица всех чисел одной системы с соответствующими эквивалентами из другой системы; задача перевода сводится к нахождению соответствующей строки таблицы и выбору из нее эквивалента. Такая таблица очень громоздка и требует большой емкости памяти для хранения. Другой вид табличного метода заключается в том, что имеются таблицы эквивалентов в каждой системе только для цифр этих систем и степеней основания (положительных и отрицательных); задача перевода сводится к тому, что в выражение ряда (1) для исходной системы счисления надо поставить эквиваленты из новой системы для всех цифр и степеней основания и произвести соответствующие действия (умножения и сложения) по правилам q2-арифметики. полученный результат этих действий будет изображать число в новой системе счисления. Пример 2. Перевести десятичное число A = 113 в двоичную систему счисления, используя таблицу эквивалентов цифр и степеней основания (q2 = 2). Таблица 1 – Таблица эквивалентов Десятичное число 100 101 102 Двоичное число 0001 1010 110 0100 Решение. Подставив значения двоичных эквивалентов десятичных цифр и степеней основания в (3), получим A = 113 = 1 · 102 + 1 · 101 + 3 · 100 = 001 · 1100100 + 0001 · 1010 + 0011 · 0001 = 11100012. Ответ: 11100012. 2. Форматы представления чисел с фиксированной плавающей запятой Число 0,028 можно записать так: 28·10-3, или 2,8·10-2, или 0,03 (с округлением) и т. д. В компьютере используются две формы представления чисел. Представление чисел с фиксированной запятой (точкой). Оно характеризуется тем, что положение разрядов числа в машинном изображении остается всегда постоянным независимо от величины самого числа. Число А можно представить в виде A=[A]ф KA, где [A]ф – машинное изображение числа в формате с фиксированной запятой, значение которого лежит в пределах -1 < [A]ф < 1; KA – масштабный коэффициент, выбирается так, чтобы сохранить соответствие разрадов всех чисел, которыми оперирует компьютер. Формат (разрядная сетка) машинного изображения чисел с фиксированной запятой разбивается на знаковую часть и поле числа. В знаковую часть записывается информация о знаке числа: 0, если A≥0; 1, если A<0. № разряда 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Знаковая часть Поле числа Например, числа А1 и A2 в прямом коде имеют машинное изображение: 0 0 1 0 0 1 1 1 A1 = 0.0100111000101112; 0 0 0 1 0 1 1 1 1 0 1 0 0 1 1 1 0 0 0 1 0 1 1 1 A2 = – A1 = 0.0100111000101112. Представление чисел в формате с плавающей запятой. Оно характеризуется тем, что положение разряда числа в его машинном изображении непостоянно, и число А записывается следующим образом: A = mApA, где mA – мантисса числа A; при представлении числа в компьютере мантисса должна удовлетворять ограничению 2-1 ≤ | mA | ≤ 1 – 2-n; n – количество разрядов для изображения мантиссы без знака; pA – порядок числа A. Формат машинного изображения числа с плавающей запятой содержит знаковые части и поля мантиссы и порядка. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 № разряда Форматы данных и машинные коды чисел. Числа в компьютерах в двоичных кодах представляются как с фиксированной точкой или запятой, так и с плавающей точкой или запятой. Представление чисел в формате с фиксированной точкой получило название естественной формы числа, представление с плавающей точкой – нормальной формы числа. Под те или иные форматы отводится заранее известное количество разрядов (бит) -16,32 и т.д. Эта же величина может быть выражена в байтах, с учетом того, что 1 байт=8 бит. Представление чисел в формате с фиксированной точкой Для чисел в естественной форме положение точки жестко фиксируется: Для целых чисел точка располагается справа от младшего разряда: 00000000000000002 =010, 0111111111111111. 2=32767.10; Для правильных дробей – перед старшим разрядом: 0.0000000000000002=010, 0.0000000000000012=0.000 030 517 57810; Для смешанных дробей – в определенном месте, отделяющем целую часть числа от дробной: 000000.00000000002=0.010, 000001.00000000012=1.000 976 56310 Наиболее часто такая форма используется для целых чисел и целых чисел без знака. Количество разрядов может быть либо 16 (вид Н), либо 32 (вид F). Во всех форматах знак числа помещается в старший разряд и кодируется как 0 – знак положительного числа, либо как 1 – знак отрицательного числа. Знак отделяется от самого числа воображаемой точкой (рис.) Знак 214 213 21 20 Аmin 1 1 1 1 1 Формат Н … Аmax 0 1 1 1 1 0 1 2 14 15 … 30 29 Знак 2 2 21 20 Аmin 1 1 1 1 1 Формат F … Аmax 0 1 1 1 1 0 1 2 14 15 … Рис. 1.3. Форматы чисел с фиксированной точкой. Фиксированная точка позволяет задать число только в строго определенном диапазоне. В формате Н числа можно задавать От 1111 1111 1111 11112 до 0111 1111 1111 11112, т.е. от -3276710 до 3276710, или от (1 – 215 ) до (215-1). В формате F числа могут находиться в интервале От 1111 1111 1111 1111 1111 1111 1111 11112 До 0111 1111 1111 1111 1111 1111 1111 11112, т.е. от -7 F F F F F F F16 до 7 F F F F F F F16. Естественно, что представление в шестнадцатиричной системе для формы F предпочтительнее двоичной. Рассмотрим несколько примеров. ЗАДАЧИ 1.3.1. Представить в форматах Н и F числа -12710 и 12710 12710=1*26+1*25+1*24+1*23+1*22+1*21+1*20=0111 11112. А2Н=0000 0000 0111 11112, А2F=0000 00 7 F16. -12710=- (1*26+1*25+1*24+1*23+1*22+1*21+1*20)= -0111 11112. А2Н=1000 0000 0111 11112, А2F=8000 00 7 F16. 1.3.2. Определить, какие из следующих шестнадцатиричных чисел положительные, а какие отрицательные: 9754, 157, ADF, 7654AD и DFEA. Знак числа определяется по первой цифре: если она меньше 8 (1000), то число положительное, если значение от 8 до F, то отрицательное. Таким образом, получаем 9754<0, 157>0, ADF<0, 7654AD>0 и DFEA<0. Представление чисел в формате с плавающей точкой Для расширения диапазона рассматриваемых чисел по сравнению с естественной формой чисел используется формат с плавающей точкой или нормальная форма. Любое число в этом формате представляется, как А= ±maE±Pа, где ma - мантисса числа А; Е – основание системы счисления; ±Ра- порядок. Все эти величины – двоичные числа без знака. На рис. 2 приведен формат числа в нормальной форме. Старший разряд (нулевой) содержит знак мантиссы, первый разряд – знак порядка, 6 разрядов, со второго по седьмой, определяют значение порядка, а остальные – мантиссу. Нормальная форма может быть представлена коротким форматом Е (4 байта), длинным форматом D (8 байт) и повышенной точности (16 байт). Во всех этих формах представления первый байт остается постоянным, изменяется только область, отведенная под мантиссу. Знак ma Знак ma Знак Ра Знак Ра 0 Порядок Мантисса Ра ma 1 2 … 7 8 Рис. 2. Нормальная форма числа 31 При таком представлении чисел 0 может быть записан 64 разными способами, т.к. для этого подходят любые значения порядков 0*20=0*21=…=0*263. А другие числа могут иметь много различных форм записи. Например, 9 8 1 153610=3*2 =6*2 =…=768*2 . Для однозначного представления чисел мантиссу нормализуют, т.е. накладывают ограничение 1/Е≤m<1. Это ограничение означает, что мантисса представляет собой правильную дробь и содержит хотя бы одну значащую цифру после запятой, отличную от нуля. Нормализованным представлением нуля является такое представление, при котором во всех разрядах находятся нули. При использовании нормальной формы для части компьютеров характерно смещение оси порядков в область положительных значений. В этом случае арифметические действия производятся над порядками, не имеющими знака. В нормальной форме под значение порядка отводится 7 разрядов, один из них знаковый. Таким образом, значение порядка может лежать в интервале 26≤Р≤26-1, т.е. от -64 до 63. Сместив порядок на 26=64=4016, мы получаем интервал возможных значений 0≤Р≤27-1=127. Смещенный порядок на 4016 называется характеристикой и вычисляется как Рx=P+40. Если характеристика равна 40, то порядок равен 0; если характеристика меньше 40, то порядок отрицателен; если больше – то положителен. ЗАДАЧИ 1.3.3. Представить в нормальной сетке Е числа 32001,510 и -32001,510 Представим числа в шестнадцатиричном коде 32001,510=7D01,816 и -32001,510. =-7D01,816 Затем найдем нормализованные мантиссы и характеристики. m=7D01,816 m=0,7D018, при этом характеристика становится равной Рx=40+4=44 Знак m Рx m 0 100 0100 0111 1101 0000 0001 1000 0000 447D0180>0 m=-7D01,816 m=-0,7D018, при этом характеристика становится равной Рx=40+4=44 Знак m Рx m 1 100 0100 0111 1101 0000 0001 1000 0000 С47D0180<0 Контрольные вопросы: 1. Как осуществляется перевод чисел делением на основание новой системы. 2. Как пользуются при табличном методе перевода чисел? 3. Что понимают под форматом данных? 4. Как представляется число в формате с фиксированной точкой? 5. Как представляется число в формате с плавающей точкой? Лекция № 7 Тема: Меры информации: синтаксическая, семантическая, прагматическая. Информация — это сведения об объектах и явлениях окружающей среды, их параметрах, свойствах и состояниях, которые уменьшают имеющуюся о них степень неопределенности, неполноты знаний. Информатика рассматривает информацию как связанные между собой сведения, изменяющие наши представления о явлении или объекте окружающего мира. С этой точки зрения информацию можно рассматривать как совокупность знаний о фактических данных и зависимостях между ними. В процессе обработки информация может менять структуру и форму. Признаком структуры являются элементы информации и их взаимосвязь. Формы представления информации могут быть различны. Основными из них являются: символьная (основана на использовании различных символов), текстовая (текст — это символы, расположенные в определенном порядке), графическая (различные виды изображений), звуковая. В повседневной практике такие понятия, как информация и данные, часто рассматриваются как синонимы. На самом деле между ними имеются различия. Данными называется информация, представленная в удобном для обработки виде. Данные могут быть представлены в виде текста, графики, аудио-визуального ряда. Представление данных называется языком информатики, представляющим собой совокупность символов, соглашений и правил, используемых для общения, отображения, передачи информации в электронном виде. Информационная коммуникация – это пути процессы, обеспечивающие передачу сообщений от источника информации к её потребителю. Для потребителей информации важной характеристикой является адекватность. Адекватность информации – определенный уровень соответствия, создаваемого с помощью полученной информации образа реальному образу, процессу или явлению. Одной из важнейших характеристик информации является ее адекватность. От степени адекватности информации зависит правильность принятия решения. Адекватность информации может выражаться в трех формах: синтаксической, семантической и прагматической. Синтаксическая адекватность отображает формально-структурные характеристики информации, не затрагивая ее смыслового содержания. На синтаксическом уровне учитываются тип носителя и способ представления информации, скорость ее передачи и обработки, размеры кодов представления информации, надежность и Точность преобразования этих кодов и т. д. Информацию, рассматриваемую с таких позиций, обычно называют данными. Семантическая адекватность определяет степень соответствия образа объекта самому объекту. Здесь учитывается смысловое содержание информации. На этом уровне анализируются сведения, отражаемые информацией, рассматриваются смысловые связи. Таким образом, семантическая адекватность проявляется при наличии единства информации и пользователя. Эта форма служит для формирования понятий и представлений, выявления смысла, содержания информации и ее обобщения. Прагматическая адекватность отражает соответствие информации цели управления, реализуемой на ее основе. Прагматические свойства информации проявляются при наличии единртва информации, пользователя и цели управления. На этом уровне анализируются потребительские свойства информации, связанные с практическим использованием информации, с соответствием ее целевой функции деятельности системы. Каждой форме адекватности соответствует своя мера количества информации. Синтаксическая мера информации оперирует с обезличенной информацией, не выражающей смыслового отношения к объекту. На этом уровне объем данных в сообщении измеряется количеством символов в этом сообщении. В современных ЭВМ минимальной единицей измерения данных является бит — один двоичный разряд. Широко используются также более крупные единицы измерения: байт, равный 8 битам; килобайт, равный 1024 байтам; мегабайт, равный 1024 килобайтам, и т. д. Семантическая мера информации используется для измерения смыслового содержания информации. Наибольшее распространение здесь получила тезаурусная мера, связывающая семантические свойства информации со способностью пользователя принимать поступившее сообщение. Тезаурус — это совокупность сведений, которыми располагает пользователь или система. Максимальное количество семантической информации потребитель получает при согласовании ее смыслового содержания со своим тезаурусом, когда поступающая информация понятна пользователю и несет ему ранее не известные сведения. С семантической мерой количества информации связан коэффициент содержательности, определяемый как отношение количества семантической информации к общему объему данных. Прагматическая мера информации определяет ее полезность, ценность для процесса управления. Обычно ценность информации измеряется в тех же единицах, что и целевая функция управления системой. Контрольные вопросы: 1. Что такое информация? 2. Что понимают под адекватностью информации? 3. Дайте информационной коммуникации. 4. Что отображает синтаксическая адекватность? 5. Что определяет семантическая адекватность? 6. Дайте определение прагматической адекватности. Лекция № 8 Тема: Параметры измерения информации. Содержательный подход к измерению информации. Сообщение – информативный поток, который в процессе передачи информации поступает к приемнику. Сообщение несет информацию для человека, если содержащиеся в нем сведения являются для него новыми и понятными Информация - знания человека ? сообщение должно быть информативно. Если сообщение не информативно, то количество информации с точки зрения человека = 0. (Пример: вузовский учебник по высшей математике содержит знания, но они не доступны 1-класснику) Алфавитный подход к измерению информации не связывает количество информации с содержанием сообщения. Алфавитный подход - объективный подход к измерению информации. Он удобен при использовании технических средств работы с информацией, т.к. не зависит от содержания сообщения. Кол-во информации зависит от объема текста и мощности алфавита. Ограничений на max мощность алфавита нет, но есть достаточный алфавит мощностью 256 символов. Этот алфавит используется для представления текстов в компьютере. Поскольку 256=28, то 1символ несет в тексте 8 бит информации. Вероятностный подход к измерения информации. Все события происходят с различной вероятностью, но зависимость между вероятностью событий и количеством информации, полученной при совершении того или иного события можно выразить формулой которую в 1948 году предложил Шеннон. Качество информации является одним из важнейших параметров для потребителя информации. Оно определяется следующими характеристиками: - репрезентативность – правильность отбора информации в целях адекватного отражения источника информации. Например, в целях большей репрезентативности данных о себе абитуриенты стремятся представить в приемную комиссию как можно больше свидетельств, дипломов, удостоверений и другой информации, подтверждающей их высокий уровень подготовки, что учитывается при зачислении в ВУЗ; - содержательность – семантическая емкость информации. Рассчитывается как отношение количества семантической информации к ее количеству в геометрической мере. Это характеристика сигнала, про который говорят, что «мыслям в нем тесно, а словам просторно». В целях увеличения содержательности сигнала, например, используют для характеристики успеваемости абитуриента не полный перечень его аттестационных оценок, а средний балл по аттестату; - достаточность (полнота) – минимальный, но достаточный состав данных для достижения целей, которые преследует потребитель информации. Эта характеристика похожа на репрезентативность, однако разница состоит в том, что в данном случае учитывается минимальный состав информации, который не мешает принятию решения. Например, абитуриент – золотой медалист может не представлять в приемную комиссию свой аттестат: диплом, подтверждающий получение золотой медали, свидетельствует о полном наборе отличных оценок в аттестате; - доступность – простота (или возможность) выполнения процедур получения и преобразования информации. Эта характеристика применима не ко всей информации, а лишь к той, которая не является закрытой. Для обеспечения доступности бумажных документов используются различные средства оргтехники для их хранения, а для облегчения их обработки используются средства вычислительной техники; - актуальность – зависит от динамики изменения характеристик информации и определяется сохранением ценности информации для пользователя в момент ее использования. Очевидно, что касается информации, которая используется при зачислении, она актуальна, так как само обучение уже закончилось, и его результаты изменены быть не могут, а, значит, остаются актуальными; - своевременность – поступление не позже заранее назначенного срока. Этот параметр также очевиден недавним абитуриентам: опоздание с представлением позитивной информации о себе при поступлении может быть чревато незачислением; - точность – степень близости информации к реальному состоянию источника информации. Например, неточной информацией является медицинская справка, в которой отсутствуют данные о перенесенных абитуриентом заболеваниях; - достоверность – свойство информации отражать источник информации с необходимой точностью. Эта характеристика вторична относительно точности. В предыдущем примере получаемая информация недостоверна; - устойчивость – способность информации реагировать на изменения исходных данных без нарушения необходимой точности. Контрольные вопросы: 1. Какие подходы к измерению информации существуют? 2. Определите содержательный подход к измерению информации. 3. Какой подход измерения информации называется алфавитным? 4. Дайте определение вероятностному подходу. 5. Какими характеристиками определяется информация? Лекция № 9 Тема: Понятие количества информации. Единицы измерения информации. 1. Измерение информации в быту (информация как новизна). Разные люди, получив одно и тоже сообщение, по-разному оценивают количество информации, содержащееся в нем. Оно зависит от того, насколько ново это сообщение для получателя. При этом подходе трудно выделить критерии, по которым можно было вывести единицу измерения информации. 2. Измерение информации в технике (информация – любая хранящаяся, обрабатываемая или передаваемая последовательность знаков). А) В технике часто используют способ определение количества информации называемый объемным. Он основан на подсчете числа символов в сообщении, т.е. связан с его длиной и не зависит от содержания. Б) В вычислительной технике (ВТ) применяют две стандартные единицы измерения: В теории информации количеством информации называют числовую характеристику сигнала, не зависящую от его формы и содержания, и характеризующую неопределенность, которая исчезнет после получения сообщения в виде данного сигнала. В этом случае количество информации зависит от вероятности получения сообщения о том или ином событии. Для абсолютно достоверного события (событие обязательно произойдет, поэтому его вероятность равна 1) количество информации в сообщении о нем равно 0. Чем неожиданнее событие, тем больше информации он несет. Лишь при равновероятных событиях: ответ «да» или «нет», несет 1 бит. Единицы измерения количества информации. Для количественного выражения любой величины необходимо определить единицу измерения. Так, для измерения длины в качестве единицы выбран метр, для измерения массы — килограмм и так далее. Аналогично, для определения количества информации необходимо ввести единицу измерения. За единицу количества информации принимается такое количество информации, которое содержит сообщение, уменьшающее неопределенность в два раза. Такая единица названа «бит». Если вернуться к опыту с бросанием монеты, то здесь неопределенность как раз уменьшается в два раза и, следовательно, полученное количество информации равно 1 биту. Минимальной единицей измерения количества информации является бит, а следующей по величине единицей является байт, причем 1 байт = 23 бит = 8 бит. В информатике система образования кратных единиц измерения количества информации несколько отличается от принятых в большинстве наук. Традиционные метрические системы единиц, например Международная система единиц СИ, в качестве множителей кратных единиц используют коэффициент 10n, где n = 3, 6, 9 и так далее, что соответствует десятичным приставкам Кило (103), Мега (106), Гига (109) и так далее. Компьютер оперирует числами не в десятичной, а в двоичной системе счисления, поэтому в кратных единицах измерения количества информации используется коэффициент 2n. Так, кратные байту единицы измерения количества информации вводятся следующим образом: 1 Кбайт = 210 байт = 1024 байт; 1 Мбайт = 210 Кбайт = 1024 Кбайт; 1 Гбайт = 210 Мбайт = 1024 Мбайт. Количество возможных событий и количество информации. Существует формула, которая связывает между собой количество возможных событий N и количество информации I: N=2I. По этой формуле можно легко определить количество возможных событий, если известно количество информации. Например, если мы получили 4 бита информации, то количество возможных событий составляло: N = 24= 16. Наоборот, для определения количества информации, если известно количество событий, необходимо решить показательное уравнение относительно I. Например, в игре «Крестики-нолики» на поле 8x8 перед первым ходом существует возможных события (64 различных варианта расположения «крестика»), тогда уравнение принимает вид: 64 = 2I. Так как 64 = 26, то получим: 26 = 2I. Таким образом, I = 6 битов, то есть количество информации, полученное вторым игроком после первого хода первого игрока, составляет 6 битов. Контрольные вопросы: 1. Что называется измерением информации? 2. Какие способы определения количества информации существуют? 3. Дайте определение количества информации. 4. какие единицы измерения информации существуют? Лекция № 10 Тема: Формула Хартли при определении количества информации. В 1928 г. американский инженер Р. Хартли предложил научный подход к оценке сообщений. Предложенная им формула имела следующий вид: I = log2 K , Где К - количество равновероятных событий; I - количество бит в сообщении, такое, что любое из К событий произошло. Тогда K=2I. Иногда формулу Хартли записывают так: I = log2K = log2 (1 / р) = - log2 р, т. к. каждое из К событий имеет равновероятный исход р = 1 / К, то К = 1 / р. Задача. Шарик находится в одной из трех урн: А, В или С. Определить сколько бит информации содержит сообщение о том, что он находится в урне В. Решение. Такое сообщение содержит I = log2 3 = 1,585 бита информации. Но не все ситуации имеют одинаковые вероятности реализации. Существует много таких ситуаций, у которых вероятности реализации различаются. Например, если бросают несимметричную монету или "правило бутерброда". "Однажды в детстве я уронил бутерброд. Глядя, как я виновато вытираю масляное пятно, оставшееся на полу, старший брат успокоил меня: - не горюй, это сработал закон бутерброда. - Что еще за закон такой? - спросил я. - Закон, который гласит: "Бутерброд всегда падает маслом вниз". Впрочем, это шутка, - продолжал брат.- Никакого закона нет. Прсто бутерброд действительно ведет себя довольно странно: большей частью масло оказывается внизу. - Давай-ка еще пару раз уроним бутерброд, проверим, - предложил я. - Все равно ведь его придется выкидывать. Проверили. Из десяти раз восемь бутерброд упал маслом вниз. И тут я задумался: а можно ли заранее узнать, как сейчас упадет бутерброд маслом вниз или вверх? Наши опыты прервала мать…" ( Отрывок из книги "Секрет великих полководцев", В.Абчук). В 1948 г. американский инженер и математик К Шеннон предложил формулу для вычисления количества информации для событий с различными вероятностями. Если I - количество информации, К - количество возможных событий, рi - вероятности отдельных событий, то количество информации для событий с различными вероятностями можно определить по формуле: I = - Sum рi log2 рi, где i принимает значения от 1 до К. Формулу Хартли теперь можно рассматривать как частный случай формулы Шеннона: I = - Sum 1 / К log2 (1 / К) = I = log2 К. При равновероятных событиях получаемое количество информации максимально. Задачи. 1. Определить количество информации, получаемое при реализации одного из событий, если бросают а) несимметричную четырехгранную пирамидку; б) симметричную и однородную четырехгранную пирамидку. Решение. а) Будем бросать несимметричную четырехгранную пирамидку. Вероятность отдельных событий будет такова: р1 = 1 / 2, р2 = 1 / 4, р3 = 1 / 8, р4 = 1 / 8, тогда количество информации, получаемой после реализации одного из этих событий, рассчитывается по формуле: I = -(1 / 2 log2 1/2 + 1 / 4 log2 1/4 + 1 / 8 log2 1/8 + 1 / 8 log2 1/8) = 1 / 2 + 2 / 4 + + 3 / 8 + 3 / 8 = 14/8 = 1,75 (бит). б) Теперь рассчитаем количество информации, которое получится при бросании симметричной и однородной четырехгранной пирамидки: I = log2 4 = 2 (бит). 2. Вероятность перового события составляет 0,5, а второго и третьего 0,25. Какое количество информации мы получим после реализации одного из них? 3. Какое количество информации будет получено при игре в рулетку с 32-мя секторами? 4. Сколько различных чисел можно закодировать с помощью 8 бит? Решение: I=8 бит, K=2I=28=256 различных чисел. Физиологи и психологи научились определять количество информации, которое человек может воспринимать при помощи органов чувств, удерживать в памяти и подвергать обработке. Информацию можно представлять в различных формах: звуковой, знаковой и др. рассмотренный выше способ определения количества информации, получаемое в сообщениях, которые уменьшают неопределенность наших знаний, рассматривает информацию с позиции ее содержания, новизны и понятности для человека. С этой точки зрения в опыте по бросанию кубика одинаковое количество информации содержится в сообщениях "два", "вверх выпала грань, на которой две точки" и в зрительном образе упавшего кубика. При передаче и хранении информации с помощью различных технических устройств информацию следует рассматривать как последовательность знаков (цифр, букв, кодов цветов точек изображения), не рассматривая ее содержание. Считая, что алфавит (набор символов знаковой системы) - это событие, то появление одного из символов в сообщении можно рассматривать как одно из состояний события. Если появление символов равновероятно, то можно рассчитать, сколько бит информации несет каждый символ. Информационная емкость знаков определяется их количеством в алфавите. Чем из большего количества символов состоит алфавит, тем большее количество информации несет один знак. Полное число символов алфавита принято называть мощностью алфавита. Молекулы ДНК (дезоксирибонуклеиновой кислоты) состоят из четырех различных составляющих (нуклеотидов), которые образуют генетический алфавит. Информационная емкость знака этого алфавита составляет: 4 = 2I, т.е. I = 2 бит. Каждая буква русского алфавита (если считать, что е=е) несет информацию 5 бит (32 = 2I). При таком подходе в результате сообщения о результате бросания кубика , получим различное количество информации, Чтобы его подсчитать, нужно умножить количество символов на количество информации, которое несет один символ. Количество информации, которое содержит сообщение, закодированное с помощью знаковой системы, равно количеству информации, которое несет один знак, умноженному на число знаков в сообщении. Контрольные вопросы: 1. Как выглядит формула Хартли? 2. Как выглядит формула Шеннона? 3. В чем разница между вышеперечисленными формулами? Лекция № 11 Тема: Закон аддитивности информации и его назначение. В окружающем нас мире предметов, процессов и явлений четко прослеживаются три уровня, ипостаси или плана (название еще не утвердилось): план материальный, план энергетический и план информационный. Сообщение о результатах выборов, например, может придти в глухую отдаленную деревню в виде газетной полосы (на материальном носителе), в виде сообщения по радио (носитель — энергетический) или любым другим способом. Существенно, что полученная информация вовсе не зависит ни от параметров материального носителя (газета, рукописный текст или каменные скрижали — все равно), ни от параметров энергетического (напряженность поля радиостанции может быть как 300 мВ/м, так и 30 мкВ/м, лишь бы была достаточной для приема). Благодаря Клоду Шеннону и другим основоположникам теории передачи информации научились измерять ее количественно, так же, как давно умеем измерять массу и энергию. Еще в 1748 г. трудами М. В. Ломоносова установлены законы сохранения вещества и движения: «... Все перемены, в натуре случающиеся, такого суть состояния, что сколько чего у одного тела отнимется, столько присовокупится к другому... Сей всеобщий естественный закон простирается и в самые правила движения: ибо тело, движущее своей силою другое, столько же оныя у себя теряет, сколько сообщает другому, которое от него движение получает» (Полное собрание сочинений, т. 3, 1952, с. 383). Позднее был сформулирован и закон сохранения энергии, гласящий, что энергия любой замкнутой системы при всех происходящих в ней процессах остается постоянной. Энергия может только превращаться из одной формы в другую и перераспределяться между частями системы. Для незамкнутых систем увеличение или уменьшение энергии равно принятой или переданной энергии другим системам. В современной физике насчитывают довольно много законов сохранения (массы, импульса, момента импульса, энергии, заряда и т. д.). Все они относятся к замкнутым системам (не взаимодействующим с их окружением). Давайте же, пользуясь методом аналогий, распространим законы сохранения и на информационный план бытия, сформулировав, как гипотезу, закон сохранения информации: в замкнутой системе количество информации остается неизменным. Правомочность гипотезы в науке принято проверять приложением ее к практике. Дело это нескорое и непростое, но некоторые примеры, как кажется, хорошо иллюстрируют сформулированный закон. Обратимся к близкому и родному — линии передачи информации (см. рисунок). Оба корреспондента по отдельности, отправитель и получатель, являются, естественно, открытыми системами, поскольку передают и принимают информацию, т. е. взаимодействуют с окружением. Но оба они вместе есть система замкнутая, поскольку взаимодействие происходит внутри нее. Получатель, приняв сообщение, увеличил свою информацию. Если сообщение утеряно, забито шумом и помехами, то ничего страшного — у отправителя то оно осталось. Потому и придуманы протоколы обмена с переспросом, корректирующие коды и тому подобное. Заметим, что отправитель, отослав сообщение, количество своей информации не убавил! По-видимому, в информационном мире несколько иные правила, нежели в энергетическом и материальном. Сообщая информацию, вы ее не теряете, а получая — приобретаете ("научился сам — научи другого!"). Но с точки зрения всей замкнутой системы общее количество информации не убавилось, но и не прибавилось, ведь получатель принял то, что уже есть в системе, а заранее известное сообщение (по Шеннону) информации не добавляет. Хотя с узкой точки зрения получателя информации у него прибавилось. Тут, кажется, намечается и "принцип относительности" в информационном мире. Осмыслив закон сохранения информации (закон аддиьивности), получаем хорошо известный вывод: замкнутые подсистемы, внутри которых произошли уже все возможные передачи сообщений, развиваться и совершенствоваться не могут. Вспомните: "вариться в собственном соку", "загнивающий коллектив" и т. д. Главный принцип развития и совершенствования подсистемы — открытость, способность к обучению, в конечном итоге к обмену, т. е. к передаче и приему информации. Любая радиолюбительская связь — тому подтверждение. Односторонний обмен, в частности, "работа только на прием", иногда тоже не спасает. Пример: за годы "железного занавеса" отечественная радиоэлектроника почти безнадежно отстала от мировой, хотя "работа на прием" шла во всю и "цельнотянутые" серии радиоламп, транзисторов и микросхем выпускаются до сих пор. Американцы не единожды, и даже в конгрессе поднимали вопрос, не наносит ли ущерб стране открытость публикаций в технических журналах и иных изданиях? Теперь, когда гонка технологий ими выиграна, ответ получен. Ущерба и не должно быть, ведь отдавая информацию, ее не теряешь. Конечно, есть и другие немаловажные причины нашего отставания. Не затрагивая общественнополитических, упомянем лишь закрытость, связанную с чрезмерной секретностью. Не убывание информации при ее передаче широко используют в библиотеках, банках данных, справочниках. Вопрос хранения — особый. Можно ли утерять информацию? Для мелких подсистем — да. Люди забывают, библиотечные фонды списывают и уничтожают, магнитные ленты и диски стирают. Но стоит раздвинуть границы системы шире (см. рисунок), как мы видим, что в расширенной системе информация сохраняется. Забытый телефон можно переспросить, утерянные сведения — восстановить по первоисточникам и т. д. Широкий обмен способствует сохранению информации ("слово не воробей, поймают, и вылетишь!"). Здесь надо бы различить, перефразируя Иммануила Канта ("вещь в себе" и "вещь для нас"), понятия информации вообще, и информации, осмысленной нами. Последняя и приобретается и теряется, первая — нет. "Рукописи не горят". Разве законы тяготения не существовали задолго до Ньютона? И разве любое падающее яблоко не несло информацию о них? Просто Исаак Ньютон осмыслил их и представил в сжатой и понятной научному миру форме. В этом и состоит открытие. Индусы говорят больше: "каждый встреченный тобой человек — твой Великий Учитель". Теперь огромное значение приобрел Интернет, явление, чрезвычайно интересное с философской точки зрения. Суммарный объем выкладываемой информации неудержимо растет, а разработчики создают все более совершенные накопители информации, вмещающие этот объем! Это еще одно подтверждение закона сохранения информации (закона аддитивности). Когда появились первые авторучки (вечные перья), сочинили поговорку: "Раньше гусиными перьями писали вечные мысли, теперь же вечными перьями пишут .... мысли!". Что бы сказал автор поговорки, освоив современный компьютер? Помните, любители флейма, ваши сообщения останутся в вечности! Позвольте и мне воспользоваться Интернетом, чтобы сохранить гипотезу о законе сохранения информации. Контрольные вопросы: 1. О чем гласит закон аддитивности? 2. Кто первый заговорил об этом законе? 3. Каково назначение закона? Лекция № 12 Тема: Алфавитный подход к измерению информации. Как измерить информацию? Часто мы говорим, что, прочитав статью в журнале или просмотрев новости, не получили никакой информации, или наоборот, краткое сообщение может оказаться для нас информативным. В то же время для другого человека та же самая статья может оказаться чрезвычайно информативной, а сообщение — нет. Информативными сообщения являются тогда, когда они новы, понятны, своевременны, полезны. Но то, что для одного понятно, для другого — нет. Вопрос «как измерить информацию?» очень непростой. Существует два подхода к измерению количества информации. Первый подход называется содержательным. В нем информация рассматривается с субъективной точки зрения, т.е. с точки зрения конкретного человека. В этом случае количество информации в сообщении не равно нулю, если сообщение пополняет знания человека. Второй подход называется алфавитным. Этот способ не связывает количество информации с содержанием сообщения, и называется он алфавитным подходом. Алфавитный подход является объективным способом измерения информации в отличие от субъективного, содержательного, подхода. Следовательно, при алфавитном подходе к измерению информации количество информации от содержания не зависит. Количество информации зависит от объема текста (то есть от числа знаков в тексте). Алфавитный подход основан на том, что всякое сообщение можно закодировать с помощью конечной последовательности символов некоторого алфавита. Алфавит — упорядоченный набор символов, используемый для кодирования сообщений на некотором языке. Мощность алфавита — количество символов алфавита. Двоичный алфавит содержит 2 символа, его мощность равна двум. Сообщения, записанные с помощью символов ASCII, используют алфавит из 256 символов. Сообщения, записанные по системе UNICODE, используют алфавит из 65 536 символов. Чтобы определить объем информации в сообщении при алфавитном подходе, нужно последовательно решить задачи: 1. Определить количество информации (i) в одном символе по формуле 2 i = N, где N — мощность алфавита 2. Определить количество символов в сообщении (m) 3. Вычислить объем информации по формуле: I = i * K. Количество информации во всем тексте (I), состоящем из K символов, равно произведению информационного веса символа на К: I = i * К. Эта величина является информационным объемом текста. Например, если текстовое сообщение, закодированное по системе ASCII, содержит 100 символов, то его информационный объем составляет 800 бит. 2i = 256 I = 8 I = 8 * 100 = 800 Для двоичного сообщения той же длины информационный объем составляет 100 бит. Необходимо так же знать единицы измерения информации и соотношения между ними. Единицы измерения информации Как уже было сказано, основная единица измерения информации — бит. 8 бит составляют 1 байт. Наряду с байтами для измерения количества информации используются более крупные единицы: 1 Кбайт (один килобайт) = 210 байт = 1024 байта; 1 Мбайт (один мегабайт) = 210 Кбайт = 1024 Кбайт; 1 Гбайт (один гигабайт) = 210 Мбайт = 1024 Мбайт. В последнее время в связи с увеличением объёмов обрабатываемой информации входят в употребление такие производные единицы, как: 1 Терабайт (Тб) = 1024 Гбайт = 240 байта, 1 Петабайт (Пб) = 1024 Тбайта = 250 байта. Контрольные вопросы: 1. Как измеряется информация при содержательном подходе? 2. Что такое алфавит? 3. Что называется мощностью алфавита? 4. Что называется объемом информации? Лекция № 13 Тема: Данные и их кодирование. Принципы кодирования и декодирования. 1. Коды: прямой, обратный, дополнительный. В компьютерной технике применяются три формы записи (кодирования) целых чисел со знаком: прямой код, обратный код, дополнительный код.. Последние две формы применяются особенно широко, так как позволяют упростить конструкцию арифметико-логического устройства компьютера путем замены разнообразных арифметических операций операцией сложения. Положительные числа в прямом, обратном и дополнительном кодах изображаются одинаково – с цифрой 0 в знаковом разряде. ПРИМЕРЫ. Число 110=12: 0 0 0 0 Число 12710=11111112 0 0 0 1 Знак числа «+» 0 1 1 1 1 1 1 Знак 1 числа «+» Отрицательные числа в прямом, обратном и дополнительном кодах имеют разное изображение. 1. Прямой код. В знаковый ряд помещается цифра 1, а в разряды цифровой части числа – двоичный код его абсолютной величины. ПРИМЕРЫ. Прямой код числа -1: 1 0 0 0 0 0 0 1 Знак числа «-» Прямой код числа -127: 1 1 1 1 1 1 1 Знак 1 числа «-» 2. Обратный код получается инвентированием всех цифр двоичного кода абсолютной величины числа, включая разряд знака: нули заменяют единицами, а единицы – нулями. ПРИМЕРЫ. Число: -1. Код модуля числа: 0 0000001. Обратный код числа: 1 1111110. Число: -127. Код модуля числа: 0 1111111 Обратный код числа: 1 0000000 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 3. Дополнительный код получается образованием обратного кода с последующим прибавлением единицы к его младшему разряду. ПРИМЕРЫ. Дополнительный код числа-1: Дополнительный код числа-127 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 Обычно отрицательные десятичные числа при вводе в машину автоматически преобразуются в обратный или дополнительный двоичный код и в таком виде хранятся, перемещаются и участвуют в операциях. При вводе таких чисел из машины происходит обратное преобразование в отрицательные десятичные числа. Контрольные вопросы: 1. Какие формы кодирования информации вы знаете? 2. Что происходит в прямом коде? 3. Как получается обратный код? 4. Как получается дополнительный код? 5. Как кодируются положительные и отрицательные числа? Лекция № 14 Тема: Алгоритмы кодирования. Теорема Котельникова и ее применение. 1. Классификация методов шифрования информации На рис.1 показаны основные объекты изучения классической криптографии, где A и B – законные пользователи, W – противник или криптоаналитик. Абонент Противник W A (отправитель) Абонент B (получатель) Ключ k e Ключ kd Зашифрование Канал связи Ek (M ) Расшифрован ие Dk (c) Рис.1. – Криптозащита при передаче информации по каналу связи Процедуры зашифрования (encryption) и расшифрования (decryption) можно представить в следующем виде: c Ek ( M ) зашифрован ие M Dk (c) расшифрова ние где M и c – открытый (plaintext) и зашифрованный (cipher text) тексты, k e и k d ключи зашифрования и расшифрования; E k и Dk - функции зашифрования с ключом k e и расшифрования м ключом k d соответственно, причем для любого открытого текста M справедливо Dk ( Ek ( M )) M . На рис.2 приведена классификация методов шифрования информации. Различают два типа алгоритмов шифрования: симметричные (с секретным ключом) и асимметричные (с открытым ключом). В первом случае обычно ключ расшифрования совпадает с ключом зашифрования, т.е. ke kd k , либо значение ключа зашифрования позволяет легко вычислить ключ расшифрования. В асимметричных алгоритмах такая возможность отсутствует: для зашифрования и расшифрования используются разные ключи, причем знание одного из них не дает практической возможности определить другой. Поэтому, если (secret ) получатель B информации сохраняет в секрете ключ расшифрования kdB k B , ключ зашифрования keB k B ( public) , может быть сделан общедоступным. В процессе шифрования информация делится на порции величиной от одного до сотен бит. Как правило, поточные шифры оперируют с битами открытого и закрытого текстов, а блочные – с блоками фиксированной длины. Шифрование с секретным ключом Методы шифрования Блочные Блочные шифры шифры Поточные шифры Замена (подстановка) (подстановка) Синхронные Перестановка (транспозиция) Самосинхронизирующиеся Шифрование с открытым ключом Комбинированные шифры Композиционны е (шифрыпроизведения) Рис.2. - Классификация методов шифрования информации Но главное отличие между этими двумя методами заключается в том, что в блочных шифрах для шифрования всех порций используется один и тот же ключ, а в поточных – для каждой порции используется свой ключ той же размерности. Иначе говоря, в поточных шифрах имеет место зависимость результата шифрования порции информации от ее позиции в тексте, а в некоторых случаях и от результатов шифрования предыдущих порций текста. Таким образом, при реализации поточной криптосистемы возникает необходимость в элементах памяти, изменяя состояние которых можно вырабатывать последовательность (поток) ключевой информации. Блочную же криптосистему можно рассматривать как зависящую от ключа подстановку на множестве значений блоков открытого текста. Достоинством поточных шифров является высокая скорость шифрования, которая и определяет область их использования – шифрование данных, требующих оперативной доставки потребителю, например аудио- и видеоинформации. Учитывая, что при применении классических блочных шифров одинаковым блокам открытого текста соответствуют одинаковые блоки шифротекста, что является серьезным недостатком, на практике получили наибольшее распространение комбинированные методы шифрования, использующие один из следующих принципов: - «сцепления» блоков; - формирование потока ключей (гаммы шифра) м помощью так называемых генераторов псевдослучайных кодов (ГПК), в качестве функции обратной связи которых используется функция зашифрования блочного шифра. Системы шифрования информации разделяются на два больших класса симметричные и несимметричные системы. Система шифрования информации называется симметричной, если для любой допустимой пары ключей (e,d) вычислительно просто определит один ключ, зная другой, то есть из е можно вычислить d и, зная d, "легко" определить е. В таких системах оба ключа должны быть секретными. Во многих симметричных системах ключ шифрования совпадает с ключом дешифрования: e = d=K. Поэтому симметричные криптосистемы иногда называют одноключевыми системами или системами с секретным ключом. Система шифрования информации называется несимметричной, если для любой допустимой пары ключей (е, d) вычислительно невозможно определить ключ дешифрования d, зная ключ шифрования е. В несимметричной системе шифрования ключ шифрования е может быть несекретным (открытым), известным для всех, включая нарушителя. Поэтому такие криптосистемы иногда называют системами с открытым ключом или двухключевыми системами. Однако не следует забывать, что и в таких системах должна обеспечиваться секретность ключа дешифрования d. Несимметричные системы шифрования удобны для практического использования тем, что при доставке ключей отправителям сообщений не надо обеспечивать секретность ключевой информации шифрования сообщений. 2. Общие принципы построения блочных шифров Симметричные системы шифрования информации подразделяются на блочные симметричные системы шифрования информации и поточные симметричные системы шифрования информации. Блочная система шифрования информации есть система шифрования, в которой сообщение разбивается на информационные блоки фиксированной длины n бит и весь блок шифруется одновременно. Очень часто в литературе используется термин «блочный шифр», который является синонимом термина «блочная система шифрования информации». В классе элементарных блочных шифров ограничимся рассмотрением наиболее универсальных и часто встречающихся шифров подстановки и перестановки. В шифре подстановки каждый символ сообщения заменяется символом, определяемым функцией подстановки E . Вид функции подстановки задается ключом e . Если функция подстановки E e фиксированная (ключ e является константой), то такой шифр называется простой заменой или одноалфавитной подстановкой. Такой шифр в силу его простоты широко использовался в дипломатической и военной связи несколько веков тому назад. Например, пусть в качестве алфавита сообщений и криптограмм использован алфавит русского языка. Зададим фиксированную функцию вида подстановки E e : (А Б В Г Д Е Ж З И Й К Л М ... Э Ю Я ) ( Ю Г И Ш Д О В К Щ Е Л Х Т ... У А Н ) Шифрование достаточно просто: подлежащий шифрованию очередной символ сообщения отыскивается в верхней строке и заменяется на соответствующий (записанный снизу) символ криптограммы. Дешифрование также тривиально и обратно шифрованию. В шифре перестановки сообщение делится на блоки фиксированной длины n и каждый символ переставляется в пределах блока по функции перестановки E e . Вид функции перестановки определяется ключом e . Функция перестановки E e , каждый символ блока сообщения, записанный в верхней строке соответствия (4.5), отображает в соответствующий символ блока криптограммы, записанный под ним в нижней строке: ( 0 1 2 ... n -1 ) ( E e (0) E e (1) E e (2) ... E e (n 1)) Рассмотренные элементарные шифры подстановки и перестановки сами по себе не способны обеспечить требуемую в современных условиях стойкость криптографических систем, так как они уязвимы к атакам нарушителя на основе частного анализа символов сообщений естественных языков, например таких как телеграфных сообщений, написанных на русском языке. Однако, комбинируя элементарные шифры, можно построить широко используемые на практике стойкие композиционные шифры. На практике удобно использовать подкласс композиционных шифров, называемый составными шифрами. В составных шифрах над блоком шифруемого сообщения многократно выполняются подстановки и перестановки. Последовательное использование подстановок и перестановок в составном шифре реализует два основных принципа построения симметричных блочных систем шифрования, сформулированных К. Шенноном: рассеивание и перемешивание. Рассеивание заключается в распространении влияния всех символов блока открытого сообщения на все символы блока криптограммы, что позволяет скрыть статистические свойства шифруемой информации. Высокая степень рассеивания достигается многократными подстановками, зависящими не только от ключа, но и от значений промежуточных результатов шифрования. Одновременно рассеивание проявляется во влиянии каждого символа ключа на все символы блока криптограммы, что исключает восстановление взаимосвязи статических свойств открытого и шифрованного текста. Перемешивание заключается в усложнении взаимосвязи статических свойств сообщения и полученной из него криптограммы. Высокая степень перемешивания достигается при многократных перестановках в процессе криптопреобразований. Хорошее рассеивание и перемешивание обеспечивается использованием составного шифра, состоящего из последовательности элементарных шифрующих функций, каждая из которых вносит небольшой вклад в значительное суммарное рассеивание и перемешивание. Современные составные шифры очень часто строятся как итеративные шифры, в которых над блоком сообщения многократно выполняется некоторый набор одних и тех же шифрующих преобразований, называемых круговой функцией шифрования f . Теорема Котельникова (иногда в зарубежной литературе теорема Найквиста) позволяет выделить класс сигналов, для которых эти сигналы могут быть без потерь информации представлены своими дискретными отсчетами. Мы уже видели, что если в спектре аналоговой сигнала не содержится составляющих с частотами выше частоты Найквиста, то сдвинутые копии спектров не будут прерываться. В этом случае использование идеального ФНЧ с прямоугольной АЧХ позволит выделить исходную (несдвинутую) копию спектра, сосредоточенную в окрестности нулевой частоты и, таким образом, в точности восстановить исходный аналоговый сигнал. АЧХ идеального ФНЧ для восстановления показана на рисунке. Коэффициент передачи ФНЧ в полосе пропускания равен Т, а не единице, чтобы скомпенсировать множитель 4Т в формуле спектра. С помощью обратного преобразования Фурье находим импульсную характеристику фильтра Дискретизованный сигнал – это сумма дельта-функций. При прохождении такого сигнала через восстанавливающий фильтр НЧ каждая дельта-функция породит на выходе соответственно сдвинутую и масштабированную копию импульсной характеристики фильтра. Выходной сигнал (в точности соответствующий исходному аналоговому сигналу) будет представлять собой сумму сдвинутых и умноженных на отсчеты сигнала копий импульсных характеристик идеального ФНЧ Сформулируем теорему Котельникова: любой сигнал s(t), спектр которого не содержит составляющих с частотами выше некоторого значения ?в = 2?fв (сигнал с финитным, т.е. конечным спектром) может быть без потерь информации представлен своими отсчетами {s(kT)}, взятыми с интервалом Т, удовлетворяющим следующему равенству В зарубежной литературе эта теорема называется теоремой Найквиста (Nyquist Theorem) или теоремой дискретизации, теоремой о выборке (sampling theorem). Последняя формула представляет собой разложение сигнала s(t) в ряд по системе функций {?k(t)}, называемой базис Котельникова Заметим, что функции всегда называются sinc-функциями. Контрольные вопросы: 1. Какие шифры вы знаете? 2. Что понимается под подстановкой? 3. Как шифруют методом перестановки? 4. Как им образом шифруют методом перемешивания? 5. Что позволяет сделать теорема Котельникова? Лекция № 15 Тема: Характеристика процесса передачи данных. Режимы и коды передачи данных 1. Структурная схема системы передачи информации. Нужно различать понятия «информация и «сообщение». Под сообщением понимают информацию, выраженную в определенной форме и подлежащую передаче. Сообщение – это форма представления информации. FE: примерами сообщений являются: текст телеграммы, речь оратора, показания измерительного датчика, команды управления и т.д. Структурная схема одной из характерных информационных систем в общем случае может быть представлена как: Сообщение Сигнал Помехи Источник информации Кодирующее устройство Информация Получатель Декодирующее устройство Передатчик Сигнал Линия связи Сигнал-помеха Решающее устройство Приемник Канал связи Система состоит из отправителя информации, линии связи и получателя информации. Сообщение для передачи его в соответствующий адрес должно быть предварительно преобразовано в сигнал. Под сигналом понимается изменяющаяся физическая величина, отображающее сообщение. Сигнал – материальный переносчик сообщения, т.е. изменяющаяся физическая величина, обеспечивающая передачу информации по линии связи. Физическая среда, по которой происходит передача сигналов от передатчика к приемнику, называется линией связи. В современной технике нашли применение электрические, электромагнитные, световые, механические, звуковые, ультразвуковые сигналы. Для передачи сообщений необходимо принять тот переносчик, который способен эффективно распределяться по используемой в системе линии связи (FE: по радиолинии эффективно распределяется только электромагнитные колебания высоких частот – от сотен кГц до дес. тысяч МГц). 2. Классификация сигналов по дискретно-непрерывному признаку. Все сообщения по характеру изменяющиеся во времени можно разделить на непрерывные и дискретные. Непрерывные по времени сообщения отображаются непрерывной функцией времени. Дискретные по времени сообщения характеризуются тем, что поступают в определенные моменты времени и описываются дискретной функцией t. Сообщения также можно разделить на непрерывные и дискретные по множеству. Непрерывные множеству сообщения характеризуются тем, что функция, их описывающая, может принимать непрерывное множество значений. Дискретные по множеству сообщения – это сообщения, которые могут быть описаны с помощью конечного набора чисел или дискретных значений некоторой функции. Дискретности по множеству и времени не связаны друг с другом. Рассмотрим возможные типы сообщений подробнее. Пусть сигнал описывается функцией X (t) 1) непрерывные по множеству и времени, или просто непрерывные; (рис. 1.2) 2) непрерывные по множеству и дискретные по времени; (рис. 1.3) 3) дискретные по множеству и непрерывные по времени; (рис. 1.4) 4) дискретные по множеству и времени, или просто дискретные; (рис. 1.5) В процессе преобразования дискретных сообщений в сигнал происходит кодирование сообщения. В широком смысле кодированием называется преобразование сообщений в сигнал. В узком смысле кодирование – это отображение дискретных сообщений сигналами в виде определенных сочетаний символов. Устройство, осуществляющее кодирование называется кодером. При передаче сигналы подвергаются воздействию помех. Под помехами подразумеваются любые мешающие внешние возмущения или воздействия (атмосферные помехи, влияние посторонних источников сигналов), а также искажения сигналов в самой аппаратуре (аппаратурные помехи), вызывающие случайное отклонение принятого сообщения (сигнала) от передаваемого. На приемной стороне осуществляется обратная операция декодирования, т.е. восстановление по принятому сигналу переданного сообщения. Решающее устройство, помещенное после приемника, осуществляет обработку принятого сигнала с целью наиболее полного извлечения из него информации. Декодирующее устройство, (декодер)преобразует принятый сигнал к виду удобному для восприятия получателем. Совокупность средств, предназначенных для передачи сигнала, называется каналом связи. 3. Квантование и кодирование сигналов Физические сигналы являются непрерывными функциями времени. Чтобы преобразовать непрерывный, в частности, аналоговый сигнал в цифровую форму используются аналого-цифровые преобразователи (АЦП). Процедуру аналогоцифрового преобразования сигнала обычно представляют в виде последовательности трех операций: дискретизации, квантования и кодирования. Операция дискретизации заключается в определении выборки моментов времени измерения сигнала. Операция квантования состоит в считывании значений координаты сигнала в выбранные моменты измерения с заданным уровнем точности, а операция кодирования - в преобразовании полученных измерений сигнала в соответствующие значения некоторого цифрового кода или кодовой комбинации, которые затем передаются по каналам связи. Процедуру восстановления непрерывного сигнала из цифрового представления также можно представить в виде двух операций: декодирования и демодуляции. Операция декодирования выполняет операцию обратную операции кодирования, т.е. преобразует последовательность заданных значений кодовой комбинации (кодовых слов) в последовательность измерений, следующих друг за другом через заданные интервалы времени дискретизации. Операция демодуляции выполняет интерполяцию или восстановление непрерывного сигнала по его измерениям. Преобразование сигнала из цифровой формы в непрерывный сигнал осуществляется цифро-аналоговыми преобразователями (ЦАП). Считается, что система аналого-цифрового и цифро-аналогового преобразований адекватна сигналу, если восстановленный непрерывный сигнал (копия) соответствует исходному непрерывному сигналу (оригиналу) с заданной погрешностью. 4. Квантование по уровню При квантовании по уровню непрерывное множество значений функции x(t) заменяется множеством дискретных значений. Для этого в диапазоне непрерывных значений функции x(t) выбирается конечное число дискретных значений этой функции (дискретных уровней) и в процессе квантования значение функции x(t) в каждый момент времени заменяется ближайшим дискретным значением. В результате квантования образуется ступенчатая функция xg(t). Квантование по уровню практически может осуществляться двумя способами. При первом способе квантования мгновенное значение функции x(t) заменяется меньшим дискретным значением. При втором способе квантования мгновенное значение функции x(t) заменяется ближайшим меньшим или большим дискретным значением в зависимости от того, какое из этих значений ближе к мгновенному значению функции. В этом случае переход ступенчатой функции с одной ступени на другую происходит в те моменты, когда первоначальная непрерывная функция x(t) пересекает середину между соответствующими соседними дискретными уровнями. Расстояние между дискретными соседними уровнями называется интервалом или шагом квантования x Различают равномерное квантование по уровню, при котором шаг квантования постоянен, и неравномерное квантование по уровню, когда шаг квантования непостоянен. На практике преимущественное применение получило равномерное квантование в связи с простотой его технической реализации. 5. Квантование по времени Рассмотрим сущность понятия дискретизации сигнала x(t) применительно к детерминированной функции. Дискретизация сигнала x(t) связана с заменой промежутка изменения независимой переменной некоторым множеством точек, т.е. операции дискретизации соответствует отображение x(t) x(ti) x(t) – функция, описывающая сигнал x(ti) – функция, описывающая сигнал, полученный в результате дискретизации, то есть в результате дискретизации исходная функция x(t) заменяется совокупностью отдельных значений x(ti). По значениям x(ti) можно восстановить исходную функцию x(t) с некоторой погрешностью. Функция, полученная в результате восстановления (интерполяции) по значениям x(ti) , называется воспроизводящей и обозначается через V(t). При обработке сигналов дискретизация по t должна производится таким образом, чтобы по отсчетным значениям x(ti) можно было получить воспроизводящую функцию V(t), которая с заданной точностью отображает исходную функцию x(t). При дискретизации сигналов приходится решать вопрос о том, каков должен быть шаг дискретизации: Ti =ti-ti-1 Контрольные вопросы: 1. Что понимают под линией связи? 2. Какое устройство называется декодером? 3. Какое устройство называется решающим? 4. Какое устройство называются декодирующим? 5. Что называют шагом квантования? 6. Дайте определение квантования по уровню. 7. Дайте определение квантования по времени. Лекция № 16 Тема: Каналы передачи данных. Способы передачи цифровой информации. 1. Характеристики каналов передачи данных Сигнал может быть охарактеризован различными параметрами. Таких параметров, вообще говоря, очень много, но для задач, которые приходится решать на практике, существенно лишь небольшое их число. Например, при выборе прибора для контроля технологического процесса может потребоваться знание дисперсии сигнала; если сигнал используется для управления, существенным является его мощность и так далее. Рассматривают три основных параметра сигнала, существенных для передачи информации по каналу. Первый важный параметр - это время передачи сигнала Tс. Второй характеристикой, которую приходится учитывать, является мощность Pс сигнала, передаваемого по каналу с определенным уровнем помех Pс . Чем больше значение Pс по сравнению с Pс, тем меньше вероятность ошибочного приема. Таким образом, представляет интерес отношение Pс /Pс. Удобно пользоваться логарифмом этого отношения, называемым превышением сигнала над помехой: Pc Lc log a( ) Pz Третьим важным параметром является спектр частот Fx . Эти три параметра позволяют представить любой сигнал в трехмерном пространстве с координатами L, T, F в виде параллелепипеда с объемом Tx Fx Lx . Это произведение носит название объема сигнала и обозначается через Vx VcTcFcLc Информационный канал можно характеризовать также тремя соответствующими параметрами: временем использования канала Тк , шириной полосы частот, пропускаемых каналом Fk, и динамическим диапазоном канала Dk характеризующим его способность передавать различные уровни сигнала. Величина Vk Tk Fk Dr называется емкостью канала. Неискаженная передача сигналов возможна только при условии, что сигнал по своему объему «вмещается» в емкость канала. Следовательно, общее условие согласования сигнала с каналом передачи информации определяется соотношением Vc Vk Однако соотношение выражает необходимое, но недостаточное условие согласования сигнала с каналом. Достаточным условием является согласование по всем параметрам: Tc Tk Fc Fc Dc Dk Для информационного канала пользуются понятиями: скорость ввода информации, скорость передачи информации и пропускная способность канала. Под скоростью ввода информации (потоком информации) I(X) понимают среднее количество информации, вводимое от источника сообщений в информационный канал в единицу времени. Эта характеристика источника сообщений и определяется только статистическими свойствами сообщений. Скорость передачи информации I(Z,Y) – среднее количество информации, передаваемое по каналу в единицу времени. Она зависит от статистических свойств передаваемого сигнала и от свойств канала. Пропускная способность С – наибольшая теоретически достижимая для данного канала скорость передачи информации. Это характеристика канала и не зависит от статистики сигнала. С целью наиболее эффективного использования информационного канала необходимо принимать меры к тому, чтобы скорость передачи информации была как можно ближе к пропускной способности канала. Вместе с тем скорость ввода информации не должна превышать пропускную способность канала, иначе не вся информация будет передана по каналу. Это основное условие динамического согласования источника сообщений и информационного канала. Одним из основных вопросов в теории передачи информации является определение зависимости скорости передачи информации и пропускной способности от параметров канала и характеристик сигналов и помех. Эти вопросы были впервые глубоко исследованы К. Шенноном. 2. Современные технические средства обмена данными и каналообразующая аппаратура Передатчик – устройство, являющееся источником данных. Приемник – устройство, принимающее данные. Приемником могут быть компьютер, терминал или какое-либо цифровое устройство. Сообщение – цифровые данные определенного формата, предназначенные для передачи. Чтобы обеспечить передачу информации из ЭВМ в коммуникационную Это может быть файл базы данных, таблица, ответ на запрос, текст или изображение. Средства передачи –физическая передающая среда и специальная аппаратура, обеспечивающая передачу сообщений. Для передачи сообщений в вычислительных сетях используются различные типы каналов связи. Наиболее распространены выделенные телефонные каналы и специальные каналы для передачи цифровой информации. Применяются также радиоканалы и каналы спутниковой связи. Особняком в этом отношении стоят ЛВС, где в качестве передающей среды используются витая пара проводов, коаксиальный кабель и оптоволоконный кабель. Чтобы обеспечить передачу информации из ЭВМ в коммуникационную среду, необходимо согласовать сигналы внутреннего интерфейса ЭВМ с параметрами сигналов, передаваемых по каналам связи. При этом должно быть выполнено как физическое согласование (форма, амплитуда и длительность сигнала), так и кодовое. Технические устройства, выполняющие функции сопряжения ЭВМ с каналами связи, называются адаптерами или сетевыми адаптерами. Один адаптер обеспечивать сопряжение с ЭВМ одного канала связи. Кроме одноканальных адаптеров используются и многоканальные устройства – мультиплексоры передачи данных или просто мультиплексоры. Мультиплексор передачи данных – устройство сопряжения ЭВМ с несколькими каналами связи. Мультиплексоры передачи данных использовались в системах телеобработки данных – первом шаге на пути к созданию вычислительных сетей. В дальнейшем при появлении сетей со сложной конфигурацией и с большим количеством абонентских систем для реализации функций сопряжения стали применяться специальные связные процессоры. Как уже говорилось ранее, для передачи цифровой информации по каналу связи необходимо поток битов преобразовать в аналоговые каналы, и при приеме информации из канала связи в ЭВМ выполнить обратное действие – преобразовать аналоговые сигналы в поток битов, которые может обрабатывать ЭВМ. Такие преобразования выполняет специальное устройство – модем. Модем – устройство выполняющее модуляцию и демодуляцию информационных сигналов при передаче их из ЭВМ в канал связи и при приеме в ЭВМ из канала связи. Наиболее дорогим компонентом вычислительной сети является канал связи. Поэтому при построении ряда вычислительных сетей стараются сэкономить на каналах связи, коммутируя несколько внутренних каналов связи на один внешний. Для выполнения функций коммутации используются специальные устройств – концентраторы. Концентратор – устройство, коммутирующее несколько каналов связи на один путем частотного разделения. В ЛВС, где физическая передающая среда представляет собой кабель ограниченной длины, для увеличения протяженности сети используются специальные устройства – повторители. Повторитель – устройство, обеспечивающее сохранение формы и амплитуды сигнала при передаче его на большее, чем предусмотрено данным типом физической передающей среды, расстояние. Существуют локальные и дистанционные повторители. Локальные повторители позволяют соединять фрагменты сетей, расположенные на расстоянии до 50 м., а дистанционные – до 2000 м. Контрольные вопросы: 1. Какое устройство называется передатчиком? 2. Что называется приемником? 3. Что понимают под сообщением? 4. Дайте определение средствам передачи связи? 5. Какое устройство называют мультиплексором передачи данных? 6. Определите понятия концетратор, повторитель. Лекция № 17 Тема: Пропускная способность канала связи. Теорема Шеннона Определим пропускную способность канала как максимальное количество информации, которое можно передавать по нему в единицу времени: C = max{Ixy}/ tx (бит/с) (1) Для канала без помех справедливо условие Ixy = Hx, а потому его пропускная способность: Cбп = max{Hx}/ tx = log2m / tx (2) В частном случае передачи двоичных разрядов (m = 2) справедливо Сбп = 1/tx (3). Для нас важно, как соотносится величина Сбп с потоком информации источника H`z, который определяется по формуле H`z = Hz/tz (бит/с) (4). Пропускная способность канала используется полностью, когда H`z = C. Между тем, уменьшение энтропии Hz может привести к сокращению информационного потока. Чтобы его увеличить, требуется сократить время tz. Если учесть, что tz = tx * lср, где lср - средняя длина кода символа, то становится ясно: чтобы полнее использовать пропускную способность канала для любого источника, нужно рационально кодировать сообщения, по возможности сокращая величину lср. Если записать условие полного использования пропускной способности канала H`z = C в развернутом виде, то для канала без помех оно будет иметь вид: Hz/tz = log2m/tx (5), а с учетом tz = tx * lср и log2m = 1 (при m=2) мы получим условие: lср = Hz (6) По сути, доказательство этой так называемой теоремы Шеннона о кодировании для канала без помех сводится к нахождению процедуры, позволяющей получить требуемый код. Эта процедура, именуемая эффективным кодированием, была предложена самим Шенноном и в дальнейшем усовершенствована (с точки зрения удобства ее практического применения) Хаффменом. В обоих случаях речь идет о посимвольном кодировании и величина Hz имеет значение безусловной энтропии. В принципе можно пойти дальше и рассматривать кодирование цепочек символов. В этом случае Hz будет иметь смысл условной энтропии порядка l, где l - максимальная длина цепочки. О "цепочечном" кодировании речь впереди, а пока мы рассмотрим классический подход к эффективному кодированию на уровне символов. Пропускная способность дискретного канала с помехами Рассмотрим теперь вариант, когда помехи в канале вызывают появление ошибок с вероятностью p0. В этом случае из соотношения 3.1 следует: C = max {Hx - Hx/y}/ tx = (log2m - Hx/y) / tx (7) Рассмотрим наиболее распространенный случай так называемого двоичного симметричного канала. При этом m = 2 (log2m = 1), а вероятности ошибки “переход "1" в "0” ” “переход "0" в "1" ” одинаковы. Если теперь рассмотреть в качестве случайного события передачу разряда кода с ошибкой (вероятность p0), то, используя формулу (9) для определения энтропии, получим: Hx/y = Hy/x = -p0 log2p0 - (1 - p0) log2(1 - p0) (8) С учетом этого (9) преобразуется к виду: C = [1 - p0log2p0 - (1 - p0)log2(1 - p0)]/tx (9) Таким образом, пропускная способность симметричного двоичного канала с помехами определяется только скоростью передачи разрядов кода (Vx = 1/tx) и вероятностью ошибок. Клод Шеннон показал, что за счет кодирования пропускную способность канала с помехами также можно использовать максимально полно (напомним, что сама она будет ниже, чем у канала без помех). Способ кодирования, который позволяет этого добиться, основан на использовании избыточных кодов, когда каждый информационный блок защищается контрольными разрядами и чем больше длина блока, тем меньше удельный вес этих избыточных разрядов, позволяющих обнаружить и исправить ошибки. 4. Пропускная способность непрерывного канала с помехами На рис. 1 была показана модель дискретного канала передачи данных. Напомним, что с помощью дискретизации и квантования к дискретному виду можно свести любое непрерывное сообщение. Однако, если шаг квантования dx и шаг дискретизации dt устремить к нулю, то из модели рис. 1 мы получим частный случай непрерывного канала. Источник информации Передатчик Канал связи Приемник Получатель информаци и Рис. 1 Источник И передает в канал непрерывное сообщение Z(t). Формирователь сигналов Фс преобразует его в сигнал X (t), приспособленный для передачи по аналоговому каналу. В линии связи ЛС на сигнал воздействуют случайные аддитивные помехи e(t) (для помех такого типа справедливо соотношение Y(t) = X(t) + e(t)). Устройство распознавания сигнала восстанавливает сообщение Z(t) по полученному Y(t). В этой схеме стадия кодирования вообще не рассматривается. Однако подход (кстати, предложенный опять-таки Клодом Шенноном) основан на тех же принципах, что и для дискретного канала, потому нам целесообразно рассмотреть этот вопрос именно здесь. Вернемся к определению пропускной способности канала связи: Cбп = max{Ixy} / tx = max{Hx } / tx (10) Величина tx в нашем случае соответствует шагу дискретизации сигнала dt. Согласно теореме Котельникова, непрерывный сигнал можно полностью восстановить по его дискретным отсчетам, если шаг дискретизации dt вдвое меньше периода самой высокочастотной составляющей fm сигнала (dt = 1/2fm). Учитывая, что любой физический канал связи всегда имеет ограниченную полосу частот, которые он в состоянии пропустить, величину fm (а следовательно и dt) можно определить исходя из характеристик канала. Если значение dx конечно, то непрерывный канал можно рассматривать как дискретный с объемом алфавита m = xm/dx + 1. Если к тому же в канале отсутствуют помехи (Hx/y = 0), то соотношение (4.11) можно преобразовать к виду: C = max {Hx} / dt = 2fm * log2m = 2fm * log2 (xm/ dx + 1) (11) Отсюда видно, что пропускная способность непрерывного канала без помех (dx -> 0) стремится к бесконечности. Однако, в реальном канале помехи присутствуют всегда, при этом сколько бит информации удается "нагрузить" на один дискретный отсчет, зависит от соотношения мощности полезного сигнала на входе приемника и помехи Pс/Pп. Клод Шеннон показал, что в случае наиболее "неприятной" помехи типа "белый шум", чья мощность равномерно распределена во всей полосе частот канала, справедливо соотношение: Cn = fm log2(Pс/Pп + 1) (12) Доказательство этой теоремы Шеннона о пропускной способности непрерывного канала весьма громоздко и мы не станем его рассматривать. Остановимся на анализе самой формулы. Итак пропускная способность непрерывного канала с помехами: - пропорциональна ширине полосы частот канала fm; - возрастает с увеличением отношения полезный сигнал/помеха (в этом случае будет уверенно распознаваться на фоне помех); - не равна нулю даже при Pc << Pп (то-есть, передачу информации принципиально можно вести сигналами более слабыми, чем помехи). Мы вернемся к использованию соотношения Шеннона 4.13 при рассмотрении вопросов передачи сигналов. Контрольные вопросы: 1. Определите пропускную способность непрерывного канала без помех. 2. Определите пропускную способность непрерывного канала с помехами. 3. Опишите назначение: источника, формирователя сигналов. 4. Как воздействует сигнал в линии связи? 5. Как работает устройство распознавания? Лекция № 18 Тема: Методы повышения помехозащищенности и помехоустойчивости передачи и приема данных. Одна и та же линия связи может использоваться для передачи сигналов между многими источниками и приемниками, т.е. линия связи может обслуживать несколько каналов. При синтезе систем передачи информации приходится решать две основные проблемы, связанные с передачей сообщений: 1) обеспечение помехоустойчивости передачи сообщений 2) обеспечение высокой эффективности передачи сообщений Под помехоустойчивостью понимается способность информации противостоять вредному воздействию помех. При данных условиях, т.е. при заданной помехе, помехоустойчивость определяет верность передачи информации. Под верностью понимается мера соответствия принятого сообщения (сигнала) переданному сообщению (сигналу). Под эффективностью системы передачи информации понимается способность системы обеспечивать передачу заданного количества информации наиболее экономичным способом. Эффективность характеризует способность системы обеспечить передачу данного количества информации с наименьшими затратами мощности сигнала, времени и полосы частот. Теория информации устанавливает критерии оценки помехоустойчивости и эффективности информационных систем, а также указывает общие пути повышения помехоустойчивости и эффективности. Повышение помехоустойчивости практически всегда сопровождается ухудшением эффективности и наоборот. Методы повышения помехоустойчивости В основах всех способов повышения помехоустойчивости информационных систем лежит использование определенных различий между полезным сигналом и помехой. Поэтому для борьбы с помехами необходимы априорные сведения о свойствах помехи и сигнала. В настоящее время известно большое число способов повышения помехоустойчивости систем. Эти способы удобно разбить на две группы. I группа – основана на выборе метода передачи сообщений. II группа – связана с построением помехоустойчивых приемников. Простым и применяемым способом повышения помехоустойчивости является увеличение отношения сигнал/помеха за счет увеличения мощности передатчика. Но этот метод может оказаться экономически не выгодным, так как связан с существенным ростом сложности и стоимости оборудования. Кроме того, увеличение мощности передачи сопровождается усилением мешающего действия данного канала на другие. Важным способом повышения помехоустойчивости передачи непрерывных сигналов является рациональный выбор вида модуляции сигналов. Применяя виды модуляции, обеспечивающие значительное расширение полосы частот сигнала, можно добиться существенного повышения помехоустойчивости передачи. Радикальным способом повышения помехоустойчивости передачи дискретных сигналов является использование специальных помехоустойчивых кодов. При этом имеется два пути повышения помехоустойчивости кодов: 1. Выбор таких способов передачи, которые обеспечивают меньшую вероятность искажения кода; 2. Увеличение корректирующих свойств кодовых комбинаций. Этот путь связан с использованием кодов, позволяющих обнаруживать и устранять искажения в кодовых комбинациях. Такой способ кодирования связан с введением в код дополнительных, избыточных символов, что сопровождается увеличением времени передачи или частоты передачи символов кода. Повышение помехоустойчивости передачи может быть также достигнуто путем повторной передачи одного и того же сообщения. На приемной стороне сравниваются полученные сообщения и в качестве истинных принимаются те, которые имеют наибольшее число совпадений. Чтобы исключить неопределенность при обработке принятой информации и обеспечить отбор по критерию большинства, сообщение должно повторяться не менее трёх раз. Этот способ повышения помехоустойчивости связан с увеличением времени передачи. Системы с повторением передачи дискретной информации делятся на системы с групповым суммированием, у которых сравнение производится по кодовым комбинациям, и на системы с посимвольным суммированием, у которых сравнение осуществляется по символам кодовых комбинаций. Посимвольная проверка является более эффективной, чем групповая. Разновидность систем, у которых повышение помехоустойчивости достигается за счет увеличения времени передачи, являются системы с обратной связью. При наличии искажений в передаваемых сообщениях информация, поступающая по обратному каналу, обеспечивает повторение передачи. Наличие обратного канала приводит к усложнению системы. Однако в отличие от систем с повторением передачи в системах с обратной связью повторение передачи будет иметь место лишь в случае обнаружения искажений в передаваемом сигнале, т.е. избыточность в целом оказывается меньшей. Помехоустойчивый прием состоит в использовании избыточности, а также априорных сведений о сигналах и помехах для решения оптимальным способом задачи приема: обнаружения сигнала, различия сигналов или восстановления сообщений. В настоящее время для синтеза оптимальных приемников широко используется аппарат теории статистических решений. Ошибки приемника уменьшаются с увеличением отношения сигнал/помеха на входе приемника. В связи с этим часто производят предварительную обработку принятого сигнала с целью увеличения отношений полезной составляющей к помехе. К таким методам предварительной обработки сигналов относится метод ШОУ (сочетание широкополосного усилителя, ограничителя и узкополосного усилителя), селекция сигналов по длительности, метод компенсации помехи, метод фильтрации, корреляционный метод, метод накопления и др. Рассмотрим простые практические способы построения кодов, способных обнаруживать и исправлять ошибки. Ограничимся рассмотрением двоичных каналов и равномерных кодов. Метод контроля четности. Это простой способ обнаружения некоторых из возможных ошибок. Будем использовать в качестве разрешенных половину возможных кодовых комбинаций, а именно те из них, которые имеют четное число единиц (или нулей). Однократная ошибка при передаче через канал неизбежно приведет к нарушению четности, что и будет обнаружено на выходе канала. Очевидно, что трехкратные, пятикратные и вообще ошибки нечетной кратности ведут к нарушению четности и обнаруживаются этим методом, в то время как двукратные, четырехкратные и вообще ошибки четной кратности – нет. Практическая техника кодирования методом контроля четности следующая. Из последовательности символов, подлежащих передаче через канал, выбирается очередной блок из k-1символов, называемых информационными, и к нему добавляется k-й символ, называемый контрольным. Значение контрольного символа выбирается так, чтобы обеспечить четность получаемого кодового слова, т.е. чтобы сделать его разрешенным. Метод контроля четности представляет значительную ценность и широко применяется в тех случаях, в которых вероятность появления более одной ошибки пренебрежимо мала (во многих случаях, если наверняка знать, что кодовое слово принято с ошибкой, имеется возможность запросить повторную передачу). В то же время избыточность кода увеличивается минимально и незначительно при больших k(в k/( k-1)раз). Метод контрольных сумм. Рассмотренный выше метод контроля четности может быть применен многократно для различных комбинаций разрядов передаваемых кодовых слов – и это позволит не только обнаруживать, но и исправлять определенные ошибки. Контрольные вопросы: 1. Дайте определение помехоустойчивости. 2. Что понимают под эффективностью системы? 3. Перечислите методы повышения помехоустйчивости. 4. Расскажите о методе контроля четности. 5. Что собой представляет метод контрольных сумм? Лекция № 19 Тема: Понятие об оптимальном кодировании информации Большинство кодов, используемых при кодировании информации без учета статистических свойств источника и помех в канале связи, основано на системах счисления (двоичной, десятичной, восьмеричной, шестнадцатеричной). Общепризнанным в настоящее время является позиционный принцип образования системы счисления. Значение каждого символа (цифры) зависит от его положения - позиции в ряду символов, представляющих число. Единица каждого следующего разряда больше единицы предыдущего в т раз, где т - основание системы счисления. Полное число получаем, суммируя значения по разрядам. (Пример: в десятичном коде 11110, т =10; младший разряд - 1, второй - 10, третий 100, то есть единица старшего разряда в десять раз больше единицы предыдущего разряда - единицы, десятки, сотни; также и в других системах счисления.) Чем больше основание системы счисления, тем меньшее число разрядов требуется для представления данного числа, а следовательно, и меньшее время для его передачи. Однако с ростом основания усложняются устройства передачи и приема сигналов, так как логические элементы в этом случае должны иметь большее число устойчивых состояний. Если учитывать оба эти обстоятельства, то целесообразно выбрать систему, обеспечивающую минимум произведения основания кода т на количество разрядов n для выражения любого числа. Найдем этот минимум по графику для большого числа 6000010. Рисунок 1. График зависимости числа разрядов п от основания кода т для числа 60000 Из графика следует, что наиболее эффективной системой является троичная. Незначительно уступают ей двоичная и четверичная. Системы с основанием десять и более значительно хуже. С точки зрения удобства физической реализации логических элементов и простоты выполнения в них арифметических и логических действий, предпочтение необходимо отдать двоичной системе. Действительно, арифметические операции в двоичной системе достаточно просты: сложение вычитание умножение 0+0=0; 0 - 0=0; 0·0=0; 0+1=1; 1 - 0=1; 0·1=1; 1+0=1; 1 - 1=0; 1·0=1; 1+1=10; 10 - 1=1 1·1=1 Сложение по модулю в двоичной системе также просто: 00=0; 01=1; 11=0; 10=1 Итак, для передачи и проведения логических и арифметических операций наиболее целесообразен двоичный код. Однако он неудобен при вводе и выводе информации, так как человеку трудно оперировать с непривычными двоичными числами. Кроме того, запись таких чисел на бумаге оказывается слишком громоздкой. Поэтому помимо двоичной получили распространение системы, которые, с одной стороны, легко сводятся как к двоичной, так и к десятичной системе, а с другой - дают более компактную запись. К таким системам относятся восьмеричная, шестнадцатеричная и двоично-десятичная. В восьмеричной системе для записи всех возможных чисел используется восемь цифр - от нуля до семи включительно. Перевод чисел из восьмеричной системы в двоичную крайне прост и сводится к замене каждой восьмеричной цифры равным ей трехразрядным двоичным числом. Например, для восьмеричного числа 745 получим: Поскольку в восьмеричной системе числа выражаются короче, чем в двоичной, она широко используется как вспомогательная система при программировании (особенно для микро- и мини-ЭВМ в машинных кодах). Чтобы сохранить преимущества двоичной системы, используют двоичнодесятичные коды. В таком коде каждая цифра десятичного числа записывается в виде четырехразрядного двоичного числа. С помощью четырех разрядов можно образовать шестнадцать различных комбинаций, из которых любые десять могут составить двоично-десятичный код. Наиболее распространен код 8-4-2-1. Этот код относится к взвешенным кодам. Цифры в названии кода означают вес единиц в соответствующих двоичных разрядах. Он соответствует первым десяти комбинациям натурального двоичного кода (табл. 1). Таблица 1 Число в десятичном Двоично-десятичный Двоично-десятичный Коде 0 1 2 3 4 5 6 7 8 9 код 8-4-2-1 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 код 5-1-2-1 0000 0001 0010 0011 0111 1000 1001 1010 1011 1111 Код 8-4-2-1 обычно используется как промежуточный при введении в вычислительную машину данных, представленных в десятичном коде. Перевод чисел из десятичного в двоично-десятичный код осуществляется перфоратором в процессе переноса информации на перфоленту или перфокарту. Последующее преобразование в двоичный код осуществляется по специальной программе в самой машине. Двоично-десятичные коды с весами 5-1-2-1 и 2-4-2-1 используются при поразрядном уравновешивании в цифровых измерительных приборах (цифровые вольтметры и т.п.). Недостатки взвешенных кодов: при передаче информации по каналам связи под действием помех отдельные элементы кода могут так исказиться, что будут приняты неверно. Например, вместо «0» будет принят элемент «1» или наоборот. Если будет искажен старший разряд, то ошибка будет значительно больше, чем при искажении младшего разряда. С этой точки зрения лучше применять невзвешенный код, у которого ошибки, вызванные помехами, были бы одинаковыми для любого разряда. В невзвешенных кодах позициям (разрядам) кодовой комбинации не приписывают определенных весов. Вес имеет лишь вся кодовая комбинация в совокупности. Рассмотрим невзвешенный двоичный рефлексный код Грея (табл. 2). Таблица 2 Десятичное число 0 1 2 3 4 5 6 7 8 9 ... 15 Двоичный код вес 8-4-2-1 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 … 1111 Код Грея 0000 0001 0011 0010 0110 0111 0101 0100 1100 1101 … 1000 Правило получения кода Грея: кодовую комбинацию натурального двоичного кода складывают по модулю 2 с такой же комбинацией, сдвинутой на один разряд вправо, при этом младший разряд сдвинутой комбинации отбрасывается. Характерные особенности кода Грея: 1) каждая последующая комбинация всегда отличается от предыдущей только в одной позиции (в одном разряде); 2) смена значений элементов в каждом разряде (1 на 0 или 0 на 1) при переходе от комбинации к комбинации в коде Грея происходит вдвое реже, чем в натуральном двоичном коде. Это свойство кода Грея позволяет получить точность кодирования выше по сравнению с натуральным двоичным кодом при том же быстродействии схемы кодирования; 3) при сложении двух соседних комбинаций кода Грея по модулю 2 (mod2) число единиц равно числу разрядов минус три (n-3). Это свойство кода Грея можно использовать для проверки правильности принятых комбинаций. В коде Грея можно выделить оси симметрии (оси отражения), относительно которых наблюдается идентичность элементов в некоторых разрядах. Так, например, имеет место симметрия относительно оси, проведенной между числами 7 и 8 (идентичны три символа младших разрядов). Эта особенность и послужила основанием для введения термина «рефлексный», то есть отраженный код. Рассмотренные свойства кода Грея показывают, что он удобен для аналогоцифрового преобразования различных непрерывных сообщений и их передачи по каналам связи (сервосистемы). Недостатком кода Грея и других рефлексных кодов является то, что эти коды невзвешенные, их трудно обрабатывать с помощью ЭВМ, так как сложнее выполнять декодирование. Преобразование кода Грея в натуральный двоичный код выполняется по правилу: старший разряд записывается без изменения, каждый следующий символ кода Грея нужно инвертировать, если в натуральном коде перед этим была получена «1», и оставить без изменения, если в натуральном коде был получен «0». (Пример: 910=1101гр =10012). Контрольные вопросы: 1. Что такое триады? 2. Что такое тетрады? 3. Достоинства и недостатки взвещенных кодов. 4. Характерные особенности кода Грея. 5. Правила преобразования кода Грея. Лекция № 20 Тема: Кодирование символьной и числовой информации. Одна и та же информация может быть представлена (закодирована) в нескольких формах. C появлением компьютеров возникла необходимость кодирования всех видов информации, с которыми имеет дело и отдельный человек, и человечество в целом. Но решать задачу кодирования информации человечество начало задолго до появления компьютеров. Грандиозные достижения человечества письменность и арифметика - есть не что иное, как система кодирования речи и числовой информации. Информация никогда не появляется в чистом виде, она всегда как-то представлена, как-то закодирована. Двоичное кодирование – один из распространенных способов представления информации. В вычислительных машинах, в роботах и станках с числовым программным управлением, как правило, вся информация, с которой имеет дело устройство, кодируется в виде слов двоичного алфавита. Кодирование символьной (текстовой) информации. Основная операция, производимая над отдельными символами текста - сравнение символов. При сравнении символов наиболее важными аспектами являются уникальность кода для каждого символа и длина этого кода, а сам выбор принципа кодирования практически не имеет значения. Для кодирования текстов используются различные таблицы перекодировки. Важно, чтобы при кодировании и декодировании одного и того же текста использовалась одна и та же таблица. Таблица перекодировки - таблица, содержащая упорядоченный некоторым образом перечень кодируемых символов, в соответствии с которой происходит преобразование символа в его двоичный код и обратно. Наиболее популярные таблицы перекодировки: ДКОИ-8, ASCII, CP1251, Unicode. Исторически сложилось, что в качестве длины кода для кодирования символов было выбрано 8 бит или 1 байт. Поэтому чаще всего одному символу текста, хранимому в компьютере, соответствует один байт памяти. Различных комбинаций из 0 и 1 при длине кода 8 бит может быть 28 = 256, поэтому с помощью одной таблицы перекодировки можно закодировать не более 256 символов. При длине кода в 2 байта (16 бит) можно закодировать 65536 символов. Кодирование числовой информации. Сходство в кодировании числовой и текстовой информации состоит в следующем: чтобы можно было сравнивать данные этого типа, у разных чисел (как и у разных символов) должен быть различный код. Основное отличие числовых данных от символьных заключается в том, что над числами кроме операции сравнения производятся разнообразные математические операции: сложение, умножение, извлечение корня, вычисление логарифма и пр. Правила выполнения этих операций в математике подробно разработаны для чисел, представленных в позиционной системе счисления. Основной системой счисления для представления чисел в компьютере является двоичная позиционная система счисления. Кодирование текстовой информации В настоящее время, большая часть пользователей, при помощи компьютера обрабатывает текстовую информацию, которая состоит из символов: букв, цифр, знаков препинания и др. Подсчитаем, сколько всего символов и какое количество бит нам нужно. 10 цифр, 12 знаков препинания, 15 знаков арифметических действий, буквы русского и латинского алфавита, ВСЕГО: 155 символов, что соответствует 8 бит информации. Суть кодирования заключается в том, что каждому символу ставят в соответствие двоичный код от 00000000 до 11111111 или соответствующий ему десятичный код от 0 до 255. Необходимо помнить, что в настоящее время для кодировки русских букв используют пять различных кодовых таблиц (КОИ - 8, СР1251, СР866, Мас, ISO), причем тексты, закодированные при помощи одной таблицы не будут правильно отображаться в другой Основным отображением кодирования символов является код ASCII - American Standard Code for Information Interchange- американский стандартный код обмена информацией, который представляет из себя таблицу 16 на 16, где символы закодированы в шестнадцатеричной системе счисления. Контрольные вопросы: 1. Как происходит кодирование символьной информации? 2. Как происходит кодирование числовой информации? 3. Как происходит кодирование (текстовой) информации? Лекция № 21 Тема: Кодирование графической информации. Важным этапом кодирования графического изображения является разбиение его на дискретные элементы (дискретизация). Основными способами представления графики для ее хранения и обработки с помощью компьютера являются растровые и векторные изображения Векторное изображение представляет собой графический объект, состоящий из элементарных геометрических фигур (чаще всего отрезков и дуг). Положение этих элементарных отрезков определяется координатами точек и величиной радиуса. Для каждой линии указывается двоичные коды типа линии (сплошная, пунктирная, штрихпунктирная), толщины и цвета. Растровое изображение представляет собой совокупность точек (пикселей), полученных в результате дискретизации изображения в соответствии с матричным принципом. Матричный принцип кодирования графических изображений заключается в том, что изображение разбивается на заданное количество строк и столбцов. Затем каждый элемент полученной сетки кодируется по выбранному правилу. Pixel (picture element - элемент рисунка) - минимальная единица изображения, цвет и яркость которой можно задать независимо от остального изображения. В соответствии с матричным принципом строятся изображения, выводимые на принтер, отображаемые на экране дисплея, получаемые с помощью сканера. Качество изображения будет тем выше, чем "плотнее" расположены пиксели, то есть чем больше разрешающая способность устройства, и чем точнее закодирован цвет каждого из них. Для черно-белого изображения код цвета каждого пикселя задается одним битом. Если рисунок цветной, то для каждой точки задается двоичный код ее цвета. Поскольку и цвета кодируются в двоичном коде, то если, например, вы хотите использовать 16-цветный рисунок, то для кодирования каждого пикселя вам потребуется 4 бита (16=24), а если есть возможность использовать 16 бит (2 байта) для кодирования цвета одного пикселя, то вы можете передать тогда 216 = 65536 различных цветов. Использование трех байтов (24 битов) для кодирования цвета одной точки позволяет отразить 16777216 (или около 17 миллионов) различных оттенков цвета - так называемый режим “истинного цвета” (True Color). Заметим, что это используемые в настоящее время, но далеко не предельные возможности современных компьютеров. Контрольные вопросы: 1. Что такое дискретизация? 2. Что такое растровое изображение? 3. Что такое векторное изображение? 4. Что называется пикселем? 5. В чем заключается матричный принцип кодирования графических изображений? Лекция № 22 Тема: Кодирование звуковой информации. Кодирование видеоинформации 1. Кодирование звуковой информацию Человек выражает свои мысли в виде предложений, составленных из слов. Они являются алфавитным представлением информации. Основу любого языка составляет алфавит - конечный набор различных знаков (символов) любой природы, из которых складывается сообщение. Для представления информации могут использоваться разные коды и, соответственно, надо знать определенные правила - законы записи этих кодов, т.е. уметь кодировать. Код - набор условных обозначений для представления информации. Кодирование - процесс представления информации в виде кода. Всем известно, что для общения друг с другом мы используем код - русский язык. При разговоре этот код передается звуками, при письме - буквами. Водитель передает сигнал с помощью гудка или миганием фар. Вы встречаетесь с кодированием информации при переходе дороги в виде сигналов светофора. Таким образом, кодирование сводиться к использованию совокупности символов по строго определенным правилам. Нельзя не сказать о том, что одно из основных достоинств компьютера связано с тем, что это удивительно универсальная машина. Каждый, кто хоть когда-нибудь с ним сталкивался, знает, что занятие арифметическими подсчетами составляет совсем не главный метод использования компьютера. Компьютеры прекрасно воспроизводят музыку и видеофильмы, с их помощью можно организовывать речевые и видеоконференции в Интернет, создавать и обрабатывать графические изображения, а возможность использования компьютера в сфере компьютерных игр на первый взгляд выглядит совершенно несовместимой с образом суперарифмометра, перемалывающего сотни миллионов цифр в секунду. Итак, кодирование информации – это процесс формирования определенного представления информации. В более узком смысле под термином «кодирование» часто понимают переход от одной формы представления информации к другой, более удобной для хранения, передачи или обработки. Интересен тот факт, что с начала 90-х годов персональные компьютеры получили возможность работать со звуковой информацией. Каждый компьютер, имеющий звуковую плату, микрофон и колонки, может записывать, сохранять и воспроизводить звуковую информацию. Звук представляет собой звуковую волну с непрерывно меняющейся амплитудой и частотой. Чем больше амплитуда, тем он громче для человека, чем больше частота сигнала, тем выше тон. Программное обеспечение компьютера в настоящее время позволяет непрерывный звуковой сигнал преобразовывать в последовательность электрических импульсов, которые можно представить в двоичной форме, а именно по такой схеме: Процесс преобразования звуковых волн в двоичный код в памяти компьютера: Процесс воспроизведения звуковой информации, сохраненной в памяти ЭВМ: Описанный способ кодирования звуковой информации достаточно универсален, он позволяет представить любой звук и преобразовывать его самыми разными способами. Но бывают случаи, когда выгодней действовать по-иному. Издавна используется довольно компактный способ представления музыки – нотная запись. В ней специальными символами указывается, какой высоты звук, на каком инструменте и как сыграть. Фактически, ее можно считать алгоритмом для музыканта, записанным на особом формальном языке. В 1983 ведущие производители компьютеров и музыкальных синтезаторов разработали стандарт, определивший такую систему кодов. Он получил название MIDI. Конечно, такая система кодирования позволяет записать далеко не всякий звук, она годится только для инструментальной музыки. Но есть у нее и неоспоримые преимущества: чрезвычайно компактная запись, естественность для музыканта (практически любой MIDI-редактор позволяет работать с музыкой в виде обычных нот), легкость замены инструментов, изменения темпа и тональности мелодии. Есть и другие, чисто компьютерные, форматы записи музыки. Среди них – формат MP3, позволяющий с очень большим качеством и степенью сжатия кодировать музыку, при этом вместо 18–20 музыкальных композиций на стандартном компакт-диске (CDROM) помещается около 200. Одна песня занимает, примерно, 3,5 Mбайт, что позволяет пользователям сети Интернет легко обмениваться музыкальными композициями. 2. Кодирование видеоинформации. Особое внимание также уделяют кодированию видеоинформации. Чтобы хранить и обрабатывать видео на компьютере, необходимо закодировать его особым образом. Изображение в видео состоит из отдельных кадров, которые меняются с определенной частотой. Кадр кодируется как обычное растровое изображение, то есть разбивается на множество пикселей. Закодировав отдельные кадры и собрав их вместе, мы сможем описать все видео. Отметим то, что видеоданные характеризуются частотой кадров и экранным разрешением. Скорость воспроизведения видеосигнала составляет 30 или 25 кадров в секунду, в зависимости от телевизионного стандарта. Наиболее известными из таких стандартов являются: SECAM, принятый в России и Франции, PAL, используемый в Европе, и NTSC, распространенный в Северной Америке и Японии. Разрешение для стандарта NTSC составляет 768 на 484 точек, а для PAL и SECAM – 768 на 576 точек. Но не все пиксели используются для хранения видеоинформации. Так, при стандартном разрешении 768 на 576 пикселей, на экране телевизора отображается всего 704 на 540 пикселей. Поэтому для хранения видеоинформации в компьютере или цифровой видеокамере, размер кадра может отличаться от телевизионного. Например, в формате Digital Video или, как его еще называют DV, размер кадра составляет 720 на 576 пикселей. Такое же разрешение имеет кадр стандарта DVD Video. Размер кадра формата Video-CD составляет 352 на 288 пикселей. Если представить каждый кадр изображения как отдельный рисунок, то видеоизображение будет занимать очень большой объем, например, одна секунда записи в системе PAL будет занимать 25 Мбайт, а одна минута – уже 1,5 Гбайт. Поэтому на практике используются различные алгоритмы сжатия для уменьшения скорости и объема потока видеоинформации. Кодирование видеоинформации еще более сложная проблема, чем кодирование звуковой информации, так как нужно позаботиться не только о дискретизации непрерывных движений, но и о синхронизации изображения со звуковым сопровождением. В настоящее время для этого используется формат, которой называется AVI (Audio-Video Interleaved — чередующееся аудио и видео). Основные мультимедийные форматы AVI и WAV очень требовательны к памяти. Поэтому на практике применяются различные способы компрессии, то есть сжатия звуковых и видеокодов. В настоящее время стандартными стали способы сжатия, предложенные MPEG (Moving Pictures Experts Group — группа экспертов по движущимся изображениям). В частности, стандарт MPEG-1 описывает несколько популярных в настоящее время форматов записи звука. Так, например, при записи в формате МР-3 при практически том же качестве звука требуется в десять раз меньше памяти, чем при использовании формата WAV. Существуют специальные программы, которые преобразуют записи звука из формата WAV в формат МР-3. Стандарт MPEG-2 описывает методы сжатия видеозаписей, которые обеспечивают телевизионное качество изображения и стереозвуковое сопровождение и имеют приемлемые требования к памяти. Совсем недавно был разработан стандарт MPEG4, применение которого позволяет записать полнометражный цветной фильм со звуковым сопровождением на компакт-диск обычных размеров и качества. Контрольные вопросы: 1. Что такое код? 2. Что понимают под кодированием? 3. Как происходит кодирование звуковой информации? 4. Как происходит кодирование графической информации? 5. Какие стандарты кодирования видеоинформации существуют? Лекция № 23 Тема: Сжатие графической и видеоинформации. Методы сжатия. 1. Обзор подходов к сжатию информации Как уже было сказано, дискретная форма представления информации является наиболее общей и универсальной. В виде совокупности символов, принадлежащих к ограниченному алфавиту, можно представить как текст или массивы чисел, так и оцифрованные звук и изображение. С учетом этого очевидно, что должны существовать универсальные методы сжатия данных (цифровой информации), применимые ко всем ее разновидностям. В силу своей универсальности эти методы должны исключать потерю информации (такая потеря может быть допустима при передаче, например мелкой детали изображения, но неприемлема, когда речь идет, скажем, о коде программы). С другой стороны, в ряде приложений общие методы наверняка не будут наиболее эффективными. Например, в силу особенностей зрительного и слухового восприятия, некоторое «огрубление» изображения или звука может оказаться малозаметным, при этом выигрыш в объеме передаваемых данных окажется значительным. В этих случаях уместно использовать специальные методы сжатия с потерями (рис.5.1). При кодировании со сжатием без потерь выделяются две разновидности методов: Первая основана на раздельном кодировании символов. Основная идея состоит в том, что символы разных типов встречаются неодинаково части и если кодировать их неравномерно, - так, чтобы короткие битовые последовательности соответствовали часто встречающимся символам, - то в среднем объем, кода будет меньше. Такой подход, именуемый, статистическим кодированием, реализован, в частности, в широко распространенном коде Хаффмана, о котором мы расскажем подробно ниже. Очевидно, что посимвольное кодирование не использует такого важного резерва сжатия данных, как учет повторяемости последовательностей (цепочек) символов. Простейший вариант учета цепочек – так называемое «кодирование повторов» или код RLE, когда последовательность одинаковых символов заменяется парой – "код символа + количество его повторов в цепочке". В большинстве случаев цепочки одинаковых символов встречаются нечасто. Однако, например, при кодировании черно-белых растровых изображений, каждая строка которых состоит из последовательных черных или белых точек, такой подход оказывается весьма эффективным (он широко применяется при факсимильной передаче документов). Кроме того, кодирование повторов нередко используется как составной элемент более сложных алгоритмов сжатия. Гораздо более универсальным является алгоритм, позволяющий эффективно кодировать повторяющиеся цепочки разных символов, имеющие при этом произвольную длину. Такой алгоритм был разработан Лемпелем и Зивом и применяется в разных версиях в большинстве современных программ-архиваторов. Идея алгоритма состоит в том, что цепочка символов, уже встречавшаяся в передаваемом сообщении, кодируется ссылкой на боле раннюю (при этом указываются «адрес» начала такой цепочки в «словаре» сообщения и ее длина). Ниже мы обсудим особенности алгоритма Лемпеля-Зива. Специализированные методы сжатия с потерями информации, естественно принципиально различаются для графики и звука. К методам сжатия изображений относятся «блочный» алгоритм JPEG основанный на независимом «огрублении» небольших фрагментов изображений (квадраты 8х8 пикселей). Здесь с ростом степени сжатия проявляется мозаичность изображения. Блочный метод JPEG (разработанный специальной группой международного комитета по стандартизации) получил сейчас повсеместное распространение и ниже мы рассмотрим его подробнее. Достигается степень сжатия – в среднем в десятки раз. При волновом сжатии в отличие от блочного изображение как бы «размывается» (чем выше степень сжатия, тем более нечетки границы и детали). При передаче данных получаемое изображение постепенно «проявляется» в деталях. Это позволяет получателю самому выбирать необходимый компромисс между качеством и скоростью получения изображения, что очень удобно, например в Интернет. К тому же «размытость» не столь резко воспринимается глазом как потеря качества по сравнению с «мозаичностью». Так что при субъективно близком уровне качества волновой метод дает большую степень сжатия по сравнению с «блочным». Именно такой подход реализован в новом стандарте JPEG 2000. Наконец, фрактальное сжатие основывается на том, что в изображении можно выделить фрагменты, повороты и масштабирование которых позволяет многократно использовать их при построении всей «картинки». Выделение и построение математического описания таких элементов-фракталов – трудоемкая в вычислительном отношении задача. Зато высокая степень сжатия (в сотни раз) и быстрота построения изображения по его фрактальному описанию делают метод очень удобным, когда не требуется быстрота компрессии. Например, этот метод удобно использовать при записи изображений на CD-ROM. Наконец, методы сжатия звука существенно различаются в зависимости от того, насколько хорошо известны специфические особенности его источника. Примерами источников, чьи особенности решающим образом влияют на характер звука, являются человеческий речевой аппарат и музыкальные инструменты. Для них эффективным способом сжатия звуковой информации является моделирование, когда передаются не характеристика звука, а параметры модели его источника. Что касается методов сжатия звука от произвольного источника, мы рассмотрим их ниже. 2. Эффективное посимвольное кодирование для сжатия данных. Основные моменты сводятся к следующему: идея такого кодирования базируется на том, чтобы использовать для часто встречающихся символов более короткие кодовые цепочки, а для l lp редких - более длинные. В результате средняя длина кода ср i i будет меньше, чем при равномерном кодировании; согласно теореме Шеннона, наилучшее кодирование позволяет сократить lср. до величены энтропии Н, подсчитанной для данного набора символов; неравномерное кодирование позволяет автоматически устранить избыточность, связанную с тем, что количество символов в алфавите может быть не кратно степени двойки (так, например, чтобы закодировать одинаковым числом разрядов 5 разновидностей символов потребуется 3 бита, так же как и для 8 символов). Идея неравномерного кодирования, в котором длина кодовой цепочки зависит от частоты появления соответствующего символа, реализована еще в знаменитой «азбуке Морзе». Однако там наряду с «точками» и «тире» использовался третий кодовый символ – разделитель «пауза». Если ограничиться только «O» и «1», то при построении кода необходимо учесть дополнительное требование: чтобы все кодовые цепочки однозначно выделялись в непрерывном потоке битов, ни одна из них не должна входить как начальный участок в кодовую, цепочку другого символа. Такое свойство кода называется префиксностью. Наибольшее распространение получил способ построения эффективного кода предположенный Хаффменом. Рассмотрим его на примере. Пусть задан алфавит из 5 разновидностей символов Z1 – Z5, и их вероятности. В таблице 5.1 наряду с этими исходными данными приведены так же результаты кодирования по Хаффмену: кодовые цепочки Ki их длинны li. Процедуру построения кода иллюстрирует таблица и рисунок 1 На первом этапе символы упорядочивают по убыванию вероятностей, а затем выполняют несколько шагов «объединения», на каждом из которых суммируются вероятности наиболее редко встречающихся символов и столбец вероятностей пересортировывается . Пример кода Хаффмена 1 Pi Ki li Zi Z1 0,25 10 2 Z2 0,17 00 2 Z3 0,08 01 3 0 Z4 0,35 2 11 Z5 0,15 3 01 p i 1 1,0 lср На втором этапе строится «дерево кода», ветви которого отображают в обратном порядке процесс «объединения вероятностей». При построении дерева принимается правило соответствия большей вероятности одному из направлений ветви (например «левому») и определенному значению бита кода (например, «1») . Цепочки битов от «корня» до конца каждой ветви соответствуют кодам исходных символов (табл.5.1 – 5.2). Zi Таблица 2 Объединение вероятностей символов Pi Шаги объединения Ki 1 2 3 4 Z1 0,35 0,35 0,40 0,60 Z2 0,25 0,25 0,35 0,40 Z3 0,17 0,23 0,25 Z4 0,15 0,17 Z5 0,08 1,00 11 10 00 011 010 Процедура кодирования сводится к выбору из кодовой таблицы цепочек, соответствующих каждому символу источника. Декодирование предусматривает выделение в битовом потоке кодов символов и их расшифровку в соответствии с таблицей. Код Хаффмена может быть двухпроходным и однопроходным. Первый строится по результатам подсчета частот (вероятностей) появления различных символов в данном сообщении. Второй использует готовую таблицу кодирования, построенную на основе вероятностей символов в сообщениях похожего типа. Например, кодирование текста на русском языке в первом случае включает его предварительный анализ, подсчет вероятностей символов, построение дерева кода и таблицы кодирования индивидуально для данного сообщения. Во втором случае будет работать готовая таблица, построенная по результатам анализа множества русскоязычных текстов. Двухпроходный код более полно использует возможности сжатия. Однако, при этом вместе с сообщением нужно передавать и кодовую таблицу. Однопроходный код не оптимален, однако прост в использовании, поэтому на практике обычно применяют именно его. В целом код Хаффмена проигрывает по сравнению с «цепочечными» кодами и его редко используют самостоятельно, однако он часто фигурирует как элемент более сложных алгоритмов сжатия. 3 Сжатие информации с учетом цепочек символов по Лемпелю-Зиву. Очевидно, что посимвольное кодирование не использует резервы сжатия информации, связанные с повторяемостью цепочек символов. Так например, в исходном тексте программы на алгоритмическом языке часто встречаются повторяющиеся наименования операторов или идентификаторы, которые в принципе можно закодировать короткими битовыми последовательностями. Наиболее удачным алгоритмом сжатия, основанным на таком подходе является алгоритм Лемпеля-Зива, который в разных модификациях используется, в частности, в большинстве программ-архиваторов. Основная идея алгоритма состоит в том, что цепочки символов, уже встреченные ранее кодируются ссылкой на их «координаты» (номер первого символа и длину) в «словаре», где находится уже обработанная часть сообщения. Сжимаемое сообщение постепенно «вдвигается» в буфер источника. Программа- кодер выделяет в буфере блок (цепочку) символов первоначально максимальной длины (обычно порядка 16 символов) и пытается найти совпадающую цепочку в словаре источника. Если это не удается, кодер повторяет поиск для более короткого «урезанного» варианта цепочки. Когда эта цепочка обнаруживается в словаре, в канал передаются ее координаты. Если же поиск не дал результата даже для самого короткого варианта цепочки из двух символов, каждый из них передается по каналу самостоятельно. На стороне приемника программа декодер принимает коды и восстанавливает исходное сообщение по собственному словарю. При этом восстановленные цепочки тут же попадают в словарь приемника так, что его содержимое синхронизируется с содержимым словаря источника. Уточним дополнительно некоторые моменты: коды координат цепочки и коды отдельных символов различаются битовыми признаками (например, в первом случае – 1, во втором –0) ; поскольку цепочки находятся чаще в начале словаря, и чаще бывают короткими, дополнительный выигрыш получают за счет статистического кодирования (по Хаффмену) их «адресов» и «длин»; «канал» - понятие применимое и к реальному каналу передачи данных, и к файлу, куда данные записываются для хранения. В последнем случае декодер «отрабатывает» при разворачивании сжатого файла; при ограниченной длине словаря (обычно от 4 до 16 кбайт) новые поступающие символы и цепочки «вытесняют» прежние (текст как бы «вдвигается» в словарь). Разумеется, вначале, когда словарь не заполнен, эффективность сжатия невысока. Рост объема словаря позволяет повысить степень сжатия, но значительно увеличивается трудоемкость поиска цепочек. Добавим, что алгоритм Лемпеля-Зива используется в большинстве популярных программ-архиваторов (в том числе, например, в zip, rar, arj и их windows – версиях). Различие скорости и эффективности кодирование-декодирование определяются в основном особенностями программной реализации. Алгоритм Лемпеля-Зива требует большого количества вычислительной работы. Его модификация - алгоритм Лемпеля-Зива-Велча является менее трудоемким, хотя и дает несколько худшие результаты по сжатию. 4 Сжатие изображений по блочному алгоритму JPEG. Как известно, все множество цветовых оттенков может быть задано различными пропорциями яркости трех цветовых составляющих, - в частности, красного (Red – R), зеленого (Green – G) и голубого (Blue – B). В памяти компьютера изображение чаще всего представляется как матрица (растр) точек пикселей. (Наряду с таким «растровым» представлением существует и так называемое «векторное», когда элементы изображения - кривые – описываются математическими уравнениями. К «векторному» описанию изображения применимы способы сжатия данных без потерь. Здесь мы будем говорить о методах, применяемых по отношению к растровым изображениям). Каждому пикселю отвечает три кодовых слова, характеризующих яркость составляющих RGB. Чаще всего для каждого из них отводится один байт (именно так кодируются цвета пикселей например в популярных графических форматах tif и bmp). Особенности человеческого зрения заключаются, в частности, в том, что глаз слабо различает мелкие детали изображения и более чувствителен к изменениям яркости, чем к цветовым переходам. Эти особенности использует популярный алгоритм сжатия с потерями информации JPEG. В настоящее время широко используется «блочная» версия алгоритма, в которой все изображение разбивается на блоки 8х8 и в дальнейшем эти блоки «огрубляются» таким образом, чтобы код, который их описывает, стал как можно короче (исходное описание каждого такого блока требует 8х8х3=192 байта). Контрольные вопросы: 1. Почему сжатие с потерями используется в основном как кодирование изображений и звука? 2. Поясните суть методов «кодирования повторов» и кодирование по ЛемпелюЗиву. 3. В чем отличия «блочного» и «волнового» кодирования изображений в стандарте JPEG? 4. Какие преимущества при сжатии звуковой информации дает детальное знание особенностей источников звука. 5. Неравномерное кодирование особенно эффективно, когда когда объем алфавита n не равен степени двойки. Объясните это. 6. Что такое «префиксность» применительно к кодированию? 7. Поясните процедуру построения кода Хаффмена ? 8. В чем особенности однопроходного и двухпроходного кода Хаффмена? Лекция № 24 Тема: Архивация информации. Программы-архиваторы: виды и функции 1. Архиваторы Одним из наиболее распространенных видов системных программ являются программы, предназначенные для архивации, упаковки файлов путем сжатия хранимой в них информации. Сжатие информации — это процесс преобразования информации, хранящейся в файле, в результате которого уменьшается ее избыточность, соответственно, требуется меньший объем Памяти для хранения. Сжатие информации в файлах производится за счет устранения избыточности различными способами, например за счет упрощения кодов, исключения из них постоянных битов или представления повторяющихся символов или повторяющейся последовательности символов в виде коэффициента повторения и соответствующих символов. Применяются различные алгоритмы подобного сжатия информации. Сжиматься могут как одни, так и несколько файлов, которые в сжатом виде помещаются в так называемый архивный файл, или архив. Архивный файл — это специальным образом организованный файл, содержащий в себе один или несколько файлов в сжатом или несжатом виде и служебную информацию об именах файлов, дате и времени их создания или модификации, размерах и т. д. Целью упаковки файлов обычно являются обеспечение более компактного размещения информации на диске, сокращение времени и, соответственно, стоимости передачи информации по каналам связи в компьютерных сетях. Кроме того, упаковка в один архивный файл группы файлов существенно упрощает их перенос с одного компьютера на другой, сокращает время копирования файлов на диски, позволяет защитить информацию от несанкционированного доступа, способствует защите от заражения компьютерными вирусами. Под степенью сжатия понимают отношение размеров сжатого файла и исходного, выраженное в процентах. Степень сжатия зависит от используемой программы сжатия, метода сжатия и типа исходного файла. Лучше всего сжимаются файлы графических образов, текстовые файлы, файлы данных, степень сжатия которых может достигать 5 — 40%, меньше сжимаются файлы исполняемых программ и загрузочных модулей — 60 — 90%. Почти не сжимаются архивные файлы. Программы для архивации отличаются используемыми методами сжатия, что соответственно влияет на степень сжатия. Архивация (упаковка) — помещение (загрузка) исходных файлов в архивный файл в сжатом или несжатом виде. Разархивацияия (распаковка) — процесс восстановления файлов из архива точно в таком виде, какой они имели до загрузки в архив. При распаковке файлы извлекаются из архива и помещаются на диск или в оперативную память. Программы, осуществляющие упаковку и распаковку файлов, называются программами-архиваторами. Большие по объему архивные файлы могут быть размещены на нескольких дисках (томах). Такие архивы называются многотомными. Том — это составная часть многотомного архива. Создавая архив из нескольких частей, можно записать его части на несколько носителей. 2. Основные виды программ-архиваторов В настоящее время применяется несколько десятков программ-архиваторов, которые отличаются перечнем функций и параметрами работы, однако лучшие из них имеют примерно одинаковые характеристики. Из числа наиболее популярных программ можно выделить: Zip (и его модификация WinZip), WinRAR, Arj (и его разновидности), G-Zip, 7-Zip. Программы-архиваторы позволяют создавать и такие архивы, для извлечения файлов из которых не требуются какие-либо программы, гак как сами архивные файлы могут содержать программу распаковки. Такие архивные файлы называются самораспаковывающимися. Самораспаковывающийся архивный файл — это загрузочный, исполняемый модуль, который способен к самостоятельной разархивации находящихся в нем файлов без использования программы-архиватора. Самораспаковывающийся архив получил название SFX-архив (SelF-eXtracting). Архивы такого типа обычно создаются в формате ЕХЕ-файла. Многие программы-архиваторы производят распаковку файлов, выгружая их на диск, но имеются и такие, которые предназначены для создания упакованного исполняемого модуля (программы). В результате такой упаковки создается программный файл с теми же именем и расширением, который при загрузке в оперативную память самораспаковывается и сразу запускается. Вместе с тем возможно и обратное преобразование программного файла в распакованный формат. К числу таких архиваторов относятся программы Upx, PKLITE, LZEXE. Ппрограмма EXPAND, входящая в состав утилит операционной системы Windows, применяется для распаковки файлов программных продуктов, поставляемых фирмой Microsoft. 3. Способы управления программой-архиватором Управление программой-архиватором осуществляется одним из следующих способов: — с помощью командной строки, в которой формируется команда запуска, содержащая имя программы-архиватора, команду управления и ключи ее настройки, а также имена архивного и исходного файлов; — с помощью встроенной оболочки и диалоговых панелей, появляющихся после запуска программы и позволяющих вести управление с использованием меню и функциональных клавиш, что создает для пользователя более комфортные условия работы; — с помощью контекстного меню Проводника в операционной системе Windows. Контрольные вопросы: 1. Какой процесс называют сжатием информации? 2. От чего зависит степень сжатия информации? 3. Какие программы называются архиваторами? 4. Перечислите способы управления программой-архиватором. 5. Какие программы-архиваторы знаете?