Вопросы и задания. Кодирование и декодирование информации

Представление информации в компьютере.

1. Представление целых чисел

2. Представление вещественных чисел

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

4. Представление графической и видеоинформации

5. Представление звуковой информации

6. Методы сжатия цифровой информации

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

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

(k-1)-й разряд ……… 1-й разряд 0-й разряд

Рис.1 Ячейка из k –разрядов.

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

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



Представление целых чисел.

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

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

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

При беззнаковом представлении все разряды ячейки отводятся под само число. При представлении со знаком самый старший (левый) разряд отводится под знак числа, остальные разряды - под собственно число. Если число положительное, то в знаковый разряд помещается 0, если число отрицательное - 1. Очевидно, в ячейках одного и того же размера можно представить больший диапазон целых неотрицательных чисел в беззнаковом представлении, чем чисел со знаком. Например, в одном байте (8 разрядов) можно записать положительные числа от 0 до 255, а со знаком - только до 127. Поэтому, если известно заранее, что некоторая числовая величина всегда является неотрицательной, то выгоднее рассматривать ее как беззнаковую.

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

Представление целых положительных чисел.

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

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

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

Определение 1. Представление числа в привычной для человека форме «знак-величина », при которой старший разряд ячейки отводится под знак, остальные k - 1 разрядов - под цифры числа, называется прямым кодом .

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

Отметим, что максимальное положительное число, которое можно записать в знаковом представлении в k разрядах, равно 2 k-1 - 1 , что практически в два раза меньше максимального числа в беззнаковом представлении в тех же k разрядах.

Вопрос 1 . Можно ли в 8-ми разрядной ячейки представить со знаком число 200?

Вопросы.

  1. Обоснуйте целесообразность представления особым образом в компьютере целых чисел.
  2. Приведите пример умножения в ограниченном числе разрядов двух положительных чисел, в результате которого получается отрицательное число.
  3. Перечислите и объясните все ошибки, которые могут возникать при выполнении арифметических операций над целыми числами в компьютерной арифметике в ограниченном числе разрядов.
  4. Покажите, каким образом использование дополнительного кода позволяет заменить операцию вычитания операцией сложения.
  5. В восьмиразрядной ячейке запишите дополнительные коды следующих двоичных чисел: а) -1010; б) -1001; в) -11; г) -11011.
  6. Можно ли по виду дополнительного кода числа сказать, четно оно или нечетно?
  7. Найдите десятичные эквиваленты отрицательных чисел, записанных в дополнительном коде: а) 11000100; б) 11111001.
  8. Какие из чисел 43 16 , 101010 2 , 129 10 и -135 10 можно сохранить в одном байте (в 8 разрядах)?
  9. Получите 16-разрядное представление следующих чисел: а) 25; б) -610.
  10. Для чисел А = 1110 2 , В = 1101 2 выполните следующие операции: А + В; А - В; В - А; -А - А; -В - В; -А - В (в восьмиразрядном знаковом представлении).

Вопросы.

1. Запишите следующие десятичные числа в нормализованном виде:

а) 217,934; в) 10,0101; б) 75321; г) 0,00200450.

2. Приведите к нормализованному виду следующие числа, используя в качестве Р основания их систем счисления:

а) -0,000001011101 2 ;

б) 98765432Ю 10 ;

в) 123456789,ABCD 16 .

3. Сравните следующие числа:

а) 318,4785 × 10 9 и 3,184785 × 10 11 ;

б) 218,4785 × 10 -3 и 21847,85 × 10 -4 ;

в) 0,1101 2 × 2 2 и 101 2 × 2 -2 .

4. Сравните диапазон представления чисел с плавающей за­пятой в 32-разрядном формате (24 разряда для мантиссы и 6 разрядов для модуля порядка) с диапазоном представления чисел с фиксированной запятой в том же формате.

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

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

а) 0,397621 х 10 3 + 0,237900 х 10 1 ;

б) 0,982563 х 10 2 - 0,745623 х 10 2 ;

в) 0,235001 х 10 2 0,850000 х 10 3 ;

г) 0,117800 х Ю 2: 0,235600 х 10 3 .

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

7. Выполните действие над машинными кодами чисел с плавающей запятой в 32-разрядном формате: X =А + В, где А = 125,75 и В = -50.

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

Квантование цвета.

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

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

Ученым долгое время не удавалось объяснить процесс цветовосприятия. До середины XVII века господствовала умозрительная теория Аристотеля, согласно которой все цвета образуются при подмешивании черного цвета к белому. Первые серьезные результаты в этой области получил Исаак Ньютон, который описал составную природу белого света и установил, что спектральные цвета являются неразложимыми и что путем смешения спектральных цветов можно синтезировать белый цвет и всевозможные оттенки других цветов. Ньютон выделил в спектре белого света семь наиболее заметных спектральных цветов и назвал их основными - красный, оранжевый, желтый, зеленый, голубой, синий и фиолетовый. Примерно полстолетия спустя, в 1756 году, выдающийся русский ученый М. В. Ломоносов сформулировал так называемую трехкомпонентную теорию цвета, обобщив огромный эмпирический материал, накопленный им при разработке технологии производства цветного стекла и мозаики. Исследуя вопросы окрашивания стекол, Ломоносов обнаружил, что для придания стеклу любого М. В. Ломоносов (1711-1765) цветового оттенка достаточно использовать всего три основные краски, смешивая их в определенных пропорциях. Спустя примерно столетие выдающийся немецкий ученый Герман Грассман (1809-1877) ввел в трехкомпонентную теорию цвета математический аппарат в форме законов Грассмана для аддитивного синтеза цвета. Наиболее важными из них являются следующие два закона.

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

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

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

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

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

  • RGB (Red-Green-Blue, красный-зеленый-синий).
  • CMYK (Cyan-Magenta-Yellow-blacK, голубой-пурпурный-желтый-черный) .
  • HSB {Hue-Saturation-Brightness, цветовой оттенок-насыщенность-яркость).

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

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

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

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

Отметим, что для белого и черного цветов насыщенность составляет 0%, т. е. эти цвета не обладают насыщенностью. Именно поэтому, подмешивая их к цветной краске, мы меняем ее насыщенность, а не оттенок.

Цветовая модель RGB.

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


Характерные особенности RGB-модели

Любая точка куба (r, g, b ) определяет некоторый цвет.

Точка (0, 0, 0) соответствует черному цвету, точка (1, 1, 1) - белому, а линия (0, 0, 0) - (1, 1, 1) описывает все градации серого цвета: от черного до белого.

При движении по прямой от (0, 0, 0) через точку (r, g, b ) получаем все градации яркости цвета (r, g, b ), от самой темной до самой яркой. Например, (1/4, 1/4, 0) - темно- коричневый цвет, (1/2, 1/2, 0) - коричневый, (3/4, 3/4, 0) - желто-коричневый, (1, 1, 0) - желтый.

На гранях куба {r = 0}, {g = 0} и {b = 0} расположены самые насыщенные цвета.

Чем ближе точка к главной диагонали (0, 0, 0)-(1, 1, 1), тем менее насыщен соответствующий цвет.

У цветовой модели RGB есть физиологическое обоснование. Человеческий глаз содержит четыре типа зрительных рецепторов: «палочки» (рецепторы интенсивности) и

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

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

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

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

Наиболее простой способ добиться этого - перевести вещественные числа из интервала }