Указания по выполнению задания 10
⇐ ПредыдущаяСтр 3 из 3
Для решения задачи измерим количество информации, содержащейся в 1 кодовой комбинации построенных в предыдущих заданиях кодов: 1) для кодов постоянной длины (задания 1 – 5, 8, 9) используем геометрическую меру. Для этого подсчитаем число двоичных разрядов в построенных кодах. Получим: l 1 = l 2 = l 3 = l 4 = l 5 = 4 двоичных символа, (22) l 8 = 5 двоичных символов; (23) l 9 = 9 двоичных символов, (24) 2) для эффективных кодов (задания 6, 7) используем среднее число двоичных разрядов l ср, применяемое для кодирования символов исходного алфавита, которое рассчитывается по формуле: , (25) где fi – частота символа, ni – число двоичных разрядов в коде i – го символа, N – число символов в исходном алфавите А, Ø длязадания 6 (см. табл. 12): l ср = 0,2*2+0,15*3+0,1*3*2+0,05*4*3+0,05*5*6=3,55 бита, (26) Ø для задания 7 (см. табл. 13 и 14): l ср = 0,2*2+0,15*3+0,1*3+0,1*4+0,05*4*5+0,05*5*4=3,55 бита, (27) 3) для определения общей эффективности кодов применим статистическую меру измерения информации, содержащейся в одном символе исходного алфавита А: это значение определит l пр предельное количество двоичных разрядов, достаточное для кодирования символов исходного алфавита. Для расчета используем формулу: . (28) Тогда получим (см. частоты в табл. 11): l пр =-(2*(0,1* log20,1)+0,2* log20,2+0,15*log20,15+9*(0,05*log20,05))=3,48418 бита. (29) Таким образом, все построенные коды являются избыточными. Однако минимальной избыточностью обладают эффективные коды: они минимально отличаются от предельного значения числа двоичных разрядов.
Часть 3. Формы представления чисел
Задание 11. Сложение в обратных кодах
Выполнить сложение в обратном коде двух отрицательных чисел, сформированных из пятиразрядного номера зачетной книжки по правилу:
· целая часть первого числа образуется из первых трех разрядов, дробная часть – из оставшихся разрядов; · целая часть второго числа совпадает с дробной частью первого числа, а его дробная часть совпадает с целой частью первого числа. Например: а) номер зачетной книжки равен 01234; б) первое число равно –12,34; (30) в) второе число равно –34,12. Разрядная сетка имеет структуру 6х10, где 6 – число разрядов порядка, 10 – число разрядов мантиссы. При переводе дробной части слагаемых ориентироваться на необходимость заполнения разрядной сетки мантиссы. Результат сложения перевести в десятичную систему счисления и сравнить с тем, что должно было бы получиться. Указания по выполнению задания 11
1) перевод слагаемых в двоичную систему счисления: · перевод целой части выполним на примере числа 34 последовательным делением делимого на 2: Таблица 21
Получаем: 34 = 1000102. (31) · перевод дробной части выполним на примере числа 0,12 последовательным умножением множимого на 2. При этом перевод заканчивается, когда сумма двоичных разрядов целой части и дробной будет равна 9 (т.е. количеству разрядов для мантиссы минус 1 разряд на знак), или число разрядов дробной части будет равно 3 (по тем же соображениям): Таблица 22
Поскольку число двоичных разрядов (см. целые части произведения в табл. 22) равно 3, процедура перевода дробной части заканчивается. Таким образом: 0,12 = 0,0002. (32) Перевод второго слагаемого дает: 12,34 = 1100,010102 (33) 2) нормализация двоичных чисел и размещение их в разрядных сетках: Нормализация -100010,000 Þ -0,100010000Е+110 (34)
-1100,01010 Þ -0,110001010Е+100 (35) Размещение в разрядных сетках порядок мантисса
знаковые разряды 3) определение большего порядка путем вычитания из одного порядка другого и анализа разности: 110 – 100. Поскольку в решении задачи участвуют отрицательные числа, выполним перевод вычитаемого в обратный код и произведем сложение порядков по правилам сложения чисел в обратном коде:
Поскольку сумма положительна, большим является первый порядок (у слагаемого –34,12), а потому на следующем шаге работа ведется со вторым слагаемым –12,34; 4) выравнивание порядков и сдвиг мантиссы для слагаемого с меньшим порядком: Выравнивание порядков
Сдвиг мантиссы
5) сложение мантисс. Поскольку обе мантиссы отрицательны, сложение выполняется в обратных кодах:
Поскольку результат отрицателен, он представлен в обратном коде. Выполняется перевод в прямой код. Получаем: 6) перевод результата в десятичную систему счисления: -0,101110010Е+6= -101110,01= -(1*25+1*23+1*22+1*21+1*2-2) =
-(32+8+4+2+0,25) = -46,25. (43)
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|