2Кодирование_СС.ppt
- Количество слайдов: 81
Кодирование числовой, текстовой и графической информации. Системы счисления. Арифметические операции. Перевод чисел из одной системы счисления в другую.
Количество информации За единицу количества информации понимается такое количество информации, которое содержит сообщение, уменьшающее неопределенность в два раза. Такая единица названа «бит»
n 1 байт = 23 бит = 8 бит n 1 Кбайт = 210 байт = 1024 байт n 1 Мбайт = 210 Кбайт = 1024 Кбайт n 1 Гбайт = 210 Мбайт = 1024 Мбайт
Количество возможных событий и количество информации I N=2
Пример Если мы получили 4 бита информации, то количество возможных событий составляло: N = 24 = 16 Наоборот, для определения количества информации, если известно количество событий, необходимо решить показательное уравнение относительно I: 64 = 2 I т. к. 64 = 26, то получим: 26 = 2 I => I=6
Алфавитный подход к определению количества информации Алфавит – набор символов знаковой системы События – различные возможные состояния Количество информации, которое содержит сообщение, закодированное с помощью знаковой системы, равно количеству информации, которое несет один знак, умноженному на количество знаков
Формула Шеннона N I = - Σ pi log 2 pi i=1 где I – количество информации N – количество возможных событий pi – вероятность i–го события
Пример Пусть при бросании несимметричной четырехгранной пирамидки вероятности отдельных событий будут равны: p 1 = 1/2, p 2 = 1/4, p 3 = 1/8, p 4 = 1/8 Тогда количество информации, которое мы получим после первого броска будет равно: I=-(1/2 log 21/2+1/4 log 21/4+1/8 log 21/8)= =(1/2+2/4+3/8) битов = 14/8 битов = 1, 75 бита Этот подход к определению количества информации называется вероятностным I = log 2 N, I = log 24 = 2 бита (если события равновероятны)
Количество информации, которое мы получаем, достигает максимального значения, если события равновероятны.
Представление информации и кодирование Представление информации может осуществляться с помощью языков, которые являются знаковыми системами. Каждая знаковая система строится на основе определенного алфавита и правил выполнения операций над знаками
Кодирование информации Кодирование – это операция преобразования знаков или групп знаков одной знаковой системы в знаки или группы знаков другой знаковой системы
Двоичное кодирование информации в компьютере Информация в компьютере представлена в двоичном коде, алфавит которого состоит из двух цифр ( 0 и 1 ) Каждая цифра машинного двоичного кода несет количество информации, равное одному биту.
Представление числовой информации с помощью систем счисления Система счисления – это знаковая система, в которой числа записываются по определенным правилам с помощью символов некоторого алфавита, называемых цифрами
Системы счисления позиционные непозиционные
Непозиционная римская система счисления Значение цифры не зависит от ее положения в числе Пример: в числе ХХХ (30) цифра Х встречается трижды и в каждом случае обозначает одну и ту же величину – число 10, три числа по 10 в сумме дают 30
Позиционные системы счисления В позиционных системах счисления количественное значение цифры зависит от ее позиции в числе Пример: десятичная, двоичная, восьмеричная, шестнадцатеричная…
В позиционных системах счисления основание системы равно количеству цифр (знаков в ее алфавите) и определяет, во сколько различаются значения одинаковых цифр, стоящих в соседних позициях числа
Система счисления основание Алфавит цифр десятичная 10 двоичная 2 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 0, 1 восьмеричная 8 0, 1, 2, 3, 4, 5, 6, 7 шестнадцатеричная 16 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A(10), B(11), C(12), D(13), E(14), F(15)
Десятичная система счисления В общем случае в десятичной системе счисления запись числа А 10, которое содержит n целых разрядов числа и m дробных разрядов числа, выглядит так: А 10=an-1*10 n-1+…+a 0*100+a-1*10 -1+…+a-m*10 -m (555, 5510=5*102+5*101+5*100+5*10 -1+5*10 -2) Свернутая форма: A 10=an-1*an-2…a 0, a-1…a-m
Двоичная система счисления В общем случае в двоичной системе счисления запись числа А 2, которое содержит n целых разрядов числа и m дробных разрядов числа, выглядит так: А 2=an-1*2 n-1+…+a 0*20+a-1*2 -1+…+a-m*2 -m (A 2=101, 012) Свернутая форма: A 2=an-1*an-2…a 0, a-1…a-m
Позиционные системы счисления с произвольным основанием q-ичная система счисления q - основание Aq=an-1*qn-1+an-2*qn-2+…+a 0*q 0+a-1*q-1+…+a-m*q-m
Перевод чисел в десятичную систему счисления Для преобразования чисел, представленных в двоичной, восьмеричной и шестнадцатеричной системах счисления, в десятичную необходимо записать число в развернутой форме и вычислить его значение
Из двоичной в десятичную Возьмем любое двоичное число, например 10, 112. Запишем его в развернутой форме и произведем вычисления: 10, 112 = 1*21 + 0*20 + 1*2 -1 + 1*2 -2 = =1*2 + 0*1 + 1*1/2 + 1*1/4 = 2, 7510
Из восьмеричной в десятичную Возьмем любое восьмеричное число, например 67, 58. Запишем его в развернутой форме и произведем вычисления: 67, 58 = 6*81 + 7*80 + 5*8 -1 = = 6*8 + 7*1 + 5*1/8 = 55, 62510
Из шестнадцатеричной в десятичную Возьмем любое шестнадцатеричное число, например 19 F 16. Запишем его в развернутой форме и произведем вычисления: 19 F 16 = 1*162 + 9*161 + F*160 = = 1*256 + 9*16 + 15*1 = 41510
Задание Перевести в десятичную следующие числа: систему 1012, 1102, 1112, 78, 118, 228, 1 А 16, BF 16, 9 C 16
Перевод целых десятичных чисел в двоичную систему счисления Ацд – целое десятичное число. Ацд = an-1*2 n-1 + an-2*2 n-2 + … + a 1*21 + a 0*20 Частное от деления: an-1 * 2 n-2 + an-2 * 2 n-3 + … + a 1 остатки – a 0, a 1, a 2, …, an-1 A 2 = an-1…a 2 a 1 a 0 (свернутая форма)
Алгоритм перевода целого десятичного числа в двоичное: Последовательно выполнять деление исходного целого десятичного числа и получаемых целых частных на основание системы (на 2) до тех пор, пока не получится частное, меньшее делителя (2) n Записать полученные остатки в обратной последовательности n
Пример Десятичное число (целое частное) Делитель (основание системы) остаток Цифры двоичного числа 19 2 1 а 0 9 2 1 а 1 4 2 0 а 2 2 2 0 а 3 1 2 1 а 4 A 2 = a 4 a 3 a 2 a 1 a 0 = 100112
Перевод правильных десятичных дробей в двоичную систему счисления Адд – правильная десятичная дробь. Адд = a-1 * 2 -1 + a-2 * 2 -2 + … + a-n * 2 -n Произведение: a-1 + a-2 * 2 -1 + … Целая часть – a-1, a-2, … A 2 = a-1 a-2 … (свернутая форма)
Алгоритм перевода правильной десятичной дроби в двоичную: Последовательно выполнять умножение исходной десятичной дроби и получаемых дробных частей произведений на основание системы (на 2) до тех пор, пока не получится нулевая дробная часть или не будет достигнута требуемая точность вычислений Записать полученные произведения в последовательности целые части прямой
Пример Десятичная Множитель Целая Цифры дробь (дробная (основание часть двоичного часть системы) произведе числа произведения) ния 0, 75 2 1 а-1 0, 50 2 0, 00 2 А 2 = 0, а-1 а-2 = 0, 112 1 а-2
Перевод чисел из системы с основанием p в систему с основанием q Перевод чисел из позиционной системы с произвольным основанием p в систему с основанием q производится по алгоритмам, аналогичным рассмотренным ранее
Пример А 10 = 42410, А 16 - ? Цифры Десятичное делитель остаток шестнадцатеричного числа 424 16 8 а 0 26 16 10 (А) а 1 1 16 1 а 2 А 16 = а 2 а 1 а 0 = 1 А 816
Пример А 10 = 0, 40625, А 8 - ? Десятичная дробь множитель Целая часть произведения Цифры восьмеричного числа 0, 40625 8 3 а-1 0, 25 8 2 а-2 0, 00 8 А 8 = а-1 а-2 = 0, 328
Перевод чисел из двоичной системы счисления в восьмеричную 2=2 I т. к. 2=21, то I = 1 бит 8= 2 I Т. к. 8=23, то I = 3 бит Следовательно
Для перевода целого двоичного числа в восьмеричное его нужно разбить на группы по три цифры (триады), справа на лево, а затем преобразовать каждую группу в восьмеричную цифру. Если в последней, левой, группе окажется меньше трех цифр, то необходимо ее дополнить слева нулями.
Пример (101001)2 = ( … )8 (101) (001)2 = = (1*22 + 0*21 + 1*20)(0*22 + 0*21 + 1*20) = = 518
Двоичные триады 000 001 010 011 100 101 110 111 Восьмеричные цифры 0 1 2 3 4 5 6 7
Для перевода дробного двоичного числа (правильной дроби) в восьмеричное необходимо разбить его на триады слева на право и, если в последней, правой, группе окажется меньше трех цифр, дополнить ее справа нулями. Далее триады необходимо заменить на восьмеричные числа. А 2 = 0, 1101012 1102 = 68 1012 = 58 А 8 = 0, 658
Перевод чисел из двоичной системы счисления в шестнадцатеричную 2=2 I т. к. 2=21, то I = 1 бит 16= 2 I Т. к. 16=24, то I = 4 бит Следовательно
Для перевода целого двоичного числа в шестнадцатеричное его нужно разбить на группы по четыре цифры (тетрады), справа на лево, а затем преобразовать каждую группу в шестнадцатеричную цифру. Если в последней, левой, группе окажется меньше четырех цифр, то необходимо ее дополнить слева нулями.
Для перевода дробного двоичного числа (правильной дроби) в шестнадцатеричное необходимо разбить его на тетрады слева направо и, если в последней правой группе окажется меньше четырех цифр, то необходимо дополнить ее справа нулями.
Перевод чисел из восьмеричной и шестнадцатеричной систем счисления в двоичную Для перевода чисел из восьмеричной и шестнадцатеричной систем счисления в двоичную необходимо цифры числа преобразовать в группы двоичных цифр. Для перевода из восьмеричной в двоичную каждую цифру числа надо преобразовать в группу из трех двоичных цифр (триаду), а при преобразовании шестнадцатеричного числа – в группу из четырех цифр (тетраду).
Пример А 8 = 0, 478 , А 2 - ? 48 = 1002 78 = 1112 А 2 = 0, 1001112 А 16 = АВ 16, А 2 - ? А 16 = 10102 В 16 = 10112 А 2 = 101010112
Арифметические операции в позиционных системах счисления Сложение в двоичной системе счисления. В его основе лежит таблица сложения одноразрядных двоичных чисел. 0+0=0 0+1=1 1+0=1 1 + 1 = 10
Пример 1102 + 112 11012 Проверка: 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 = 1’ 1 1– 0=1 1– 1=0
Пример 1102 - 112 Выполните проверку самостоятельно.
Умножение. В основе умножения лежит таблица умножения одноразрядных двоичных чисел: 0*0=0 0*1=0 1*0=0 1*1=1
Пример 1102 * 112 110 + 110 100102
Деление. Операция деления выполняется по алгоритму выполнения операции деления в десятичной системе счисления: 1102 112 - 11 102 0
Арифметические операции в восьмеричной и шестнадцатеричной системах счисления Арифметические действия в восьмеричной и шестнадцатеричной системах счисления выполняются аналогично. Необходимо только помнить, что величина переноса в следующий разряд при сложении и заем из старшего разряда при вычитании определяется величиной основания системы счисления. Для проведения арифметических операций над числами, выраженными в различных системах счисления, необходимо предварительно перевести их в одну и ту же систему.
Пример 378 +258 648 9 С 16 -7816 2416
Задание Сложить восьмеричные числа: 58 и 4 8 178 и 418 178 и 1716
Представление компьютере чисел в Целые числа в компьютере хранятся в памяти в формате с фиксированной запятой
Для хранения целых не отрицательных чисел отводится одна ячейка памяти (8 битов) Число А 2=111100002 будет храниться в ячейке памяти следующим образом: 1 1 0 0 Максимальное значение целого неотрицательного числа достигается в случае, когда во всех ячейках хранятся единицы
Для n-разрядного представления максимальное значение целого неотрицательного числа будет равно 2 n-1 Определим диапазон чисел, которые могут храниться в оперативной памяти в формате целых неотрицательных чисел. Минимальное число – 00002=010 Максимальное – 11112 =25510 (А=1*27+1*26+1*25+1*24+1*23+1*22+1*21+1*20== 28 -1) = 25510
Представление в компьютере положительных чисел с использованием формата «знаквеличина» называется прямым кодом числа. Например, число 200210 = 111110100102 будет представлено в 16 -разрядном представлении следующим образом: 0 0 0 1 1 1 0 0 1 0
Максимальное положительное число (с учетом выделения одного разряда на знак) для целых чисел со знаком в n –разрядном представлении равно: A = 2 n-1 – 1 Для представления отрицательных используется дополнительный код. чисел
Дополнительный код отрицательного числа A, хранящегося в n ячейках, равен 2 n - |A|
Алгоритм для получения дополнительного кода отрицательного числа: Модуль числа записать в прямом коде в n двоичных разрядах n Получить обратный код числа, для этого значения всех битов инвертировать (все единицы заменить на нули и все нули на единицы) n. К полученному обратному коду прибавить единицу n
Пример Запишем дополнительный код отрицательного числа -2002 для 16 -разрядного компьютерного представления Прямой код модуля Обратный код |-200210| 00000111110100102 инвертирование 11111000001011012 Прибавление единицы Дополнительный код 11111000001011012 + 0000000012 11111000001011102
Вещественные числа хранятся и обрабатываются в компьютере в формате с плавающей запятой. В этом случае положение запятой в записи числа может изменяться
A=m*qn где m- мантисса числа q- основание системы счисления n- порядок числа
1/n < |m| < 1 Мантисса – правильная дробь и имеет после запятой цифру, отличную от нуля
555, 55 = 3 0, 55555*10 Нормализованная мантисса m=0, 55555 Порядок n=3
Двоичное кодирование текстовой информации Для кодирования одного символа требуется один байт информации По формуле N=2 I можно вычислить, какое количество различных символов можно закодировать N=28=256 От 0 до 255 или от 0000 до 1111
Аналоговый и дискретный способы представления изображений и звука Информация и графическая и звуковая может быть представлена в аналоговой или дискретной форме
При аналоговом представлении физическая величина принимает бесконечное множество значений, причем ее значения изменяются непрерывно. При дискретном представлении физическая величина принимает конечное множество значений, причем ее величина изменяется скачкообразно.
Дискретизация – это преобразование непрерывных изображений и звука в набор дискретных значений в форме кодов
Двоичное кодирование графической информации Графическая информация на экране монитора представляется в виде растрового изображения, которое формируется из определенного количества строк, которые в свою очередь содержат определенное количество точек (пикселей)
Качество двоичного кодирования изображения определяется разрешающей способностью экрана и глубиной цвета
N = 2 I где I - глубина цвета Глубина цвета (I) 8 Количество отображаемых цветов (N) 256 16 (High Color) 65536 24 (True Color) 16777216 32 (True Color) 4294967296
Рассчитаем необходимый объем видеопамяти для одного из графических режимов, например, с разрешением 800*600 точек и глубиной цвета 24 бита на точку. Всего точек на экране 800*600=480000 Необходимый объем видеопамяти: 24 бит * 480000=11520000 бит = =1440000 байт = 1406, 25 Кбайт = 1, 37 Мбайт
Двоичное кодирование звуковой информации В процессе кодирования непрерывного звукового сигнала производится его временная дискретизация Непрерывная звуковая волна разбивается на отдельные маленькие временные участки, причем для каждого такого участка устанавливается определенная величина амплитуды
N = 2 I где I - глубина звука Например 16 -битная глубина кодирования звука имеет 65536 различных уровней сигнала Каждому значению амплитуды звукового сигнала присваивается 16 -битный код
Качество двоичного кодирования звука определяется глубиной кодирования и частотой дискретизации
Оценка информационного объема стереоаудиофайла длительностью звучания 1 секунда при высоком качестве звука (16 битов, 48 к. Гц) 16 бит * 48000 * 2 = 1536000 бит = = 192000 байт = 187, 5 Кбайт
Хранение информации Для долговременного хранения информации, ее накопления и передачи из поколения в поколение используются носители информации
Информационная емкость носителей информации Носители информации характеризуются информационной емкостью, то есть количеством информации, которое они могут хранить


