Методичка по ТИиК
.pdf2) переместительный:
а+ b = b+ а;
а* b = b* а;
3) распределительный:
а*(b + с) = а*b + а*с; |
|
Справедливы соотношения: |
|
а + а = а; |
a + b = b, если а ≤b; |
а* а = а; |
а* b = а, если а ≤b; |
а + а* b = а; |
a + b = b, если а ≥b |
а + b = а, если а≥b; |
и др. |
Наименьшим элементом алгебры логики является 0, наибольшим
элементом - 1. В алгебре логики |
также |
вводится еще одна операция – |
|||
о п е р а ц и я |
о т р и ц а н и я |
(иначе, |
операция |
НЕ, |
операция |
ин в е р с и и ) , обозначаемая чертой над элементом.
По определению:
Справедливы, например, такие соотношения:
Логический синтез вычислительных схем
Логические блоки, в соответствии с международным стандартом:
20
схема ИЛИ, реализующая операцию логического сложения;
схема И, реализующая операцию логического умножения;
схема НЕ, реализующая операцию инверсии ;
Схема И-НЕ, реализующая операцию инвертора и отрицание результата схемы И.
Задания для всех вариантов:
1.Дано логическое выражение в результате преобразования, получим какое выражение?
2.Приведена таблица истинности:
A B C |
A√ B |
|
|
0 0 |
0 |
0 |
0 |
0 0 |
1 |
0 |
1 |
0 1 |
0 |
1 |
1 |
0 1 |
1 |
1 |
1 |
1 0 |
0 |
1 |
1 |
1 0 |
1 |
1 |
1 |
1 1 |
0 |
1 |
1 |
В заголовке третьего столбца таблицы должно быть указано, какое логическое выражение?
3.Из данных логических функций тождественно ложной является …
Аи не А или В
Аи не В или не А
Аи не В и не А
Аи не В или А
4.Даны высказывания А = «Я люблю учиться» и В= «сдавать экзамены». Конъюнкцией этих высказываний будет…
5.С помощью таблицы истинности получите результат логической функции F=A√B
21
6. |
Логическая функция F=¬A&B√¬(A√B) принимает значение ложь (0) |
|
при … |
|
|
7. |
Значение |
на выходе логической схемы |
возможно при следующей комбинации входных параметров A, B, C
8. Определите на входе логической схемы при F=1 возможна какая комбинация сигналов (A, B, C, D)?
9.Логическая функция A√B√¬(A√B) после преобразования примет вид.
10.Если на входы логической схемы
22
подана |
следующая комбинация входных параметров: |
то |
комбинацией значений на выходе будет … |
|
|
11. |
Логическое выражение не (не Х или не Y) принимает значение |
|
«истина» на наборе логических переменных. |
|
Лабораторная работа 6
Рассмотрим некоторые коды, позволяющие сделать передачу информации более эффективной, что достигается путем сжатия сообщения. Начнем с кода Шеннона–Фано. Алгоритм состоит в следующем: буквы исходного алфавита сообщения выписываются в столбец в порядке убывания их вероятностей; производится разбиение на две группы с равной по возможности суммарной вероятностью, всем буквам верхней группы в качестве первого символа кодовой комбинации приписывается «1», а нижней
– «0»; затем производятся следующие разбиения до тех пор, пока в каждой подгруппе не останется одна буква (при каждом разбиении появляется новый символ кодовой комбинации по правилам, изложенным выше).
Эффективность кода рассчитывается следующим образом
æ |
H (Z ) |
, |
|
||
lср log 2 h |
причем в случае двоичного алфавита формула имеет вид
æ |
H (Z ) |
, |
(13) |
|
|||
|
lср |
|
где средняя длина кодовой комбинации равна
l |
n(z ) p(z ) , |
(14) |
||
ср |
i |
i |
i |
|
|
|
|
|
n(zi) – число символов в кодовой комбинации. Эффективность является безразмерной величиной и всегда меньше либо равна 1, т.е. æ ≤ 1. Чем ближе этот показатель к единице, тем эффективнее код.
23
Пример 4. Проведем кодирование методом Шеннона–Фано и рассчитаем характеристики кода. Пусть исходный алфавит состоит из восьми букв и заданы их вероятности. Проведем разбиения по алгоритму Шеннона– Фано и составим кодовые комбинации.
zi |
p(zi) |
кодовые комбинации |
|||
z1 |
0,25 |
1 |
1 |
|
|
z2 |
0,20 |
1 |
0 |
|
|
|
|
|
|
|
|
z3 |
0,15 |
0 |
1 |
1 |
|
z4 |
0,10 |
0 |
1 |
0 |
|
z5 |
0,10 |
0 |
0 |
1 |
1 |
|
|
|
|
|
|
z6 |
0,10 |
0 |
0 |
1 |
0 |
z7 |
0,06 |
0 |
0 |
0 |
1 |
z8 |
0,04 |
0 |
0 |
0 |
0 |
|
|
|
|
|
|
Рассчитаем энтропию по формуле (6)
H 0,25 log 2 0,25 0,20 log 2 0,20 0,15 log 2 0,15 3 0,10 log 2 0,100,06 log 2 0,06 0,04 log 2 0,04 2,79 (бит).
Рассчитаем среднюю длину кодовой комбинации по формуле (14)
l 0,25 2 0,20 2 0,15 3 0,10 3 0,10 4
ср
0,10 4 0,06 4 0,04 4 2,85.
Эффективность кода, согласно (13), равна
æ 2,792,85 0,98.
Эффективность кодирования можно увеличить, если проводить кодирование блоков, состоящих из нескольких букв алфавита.
Пример 5. Проведем блоковое кодирование по методу Шеннона–Фано. Пусть алфавит состоит из двух независимых букв с заданными вероятностями p(z1)=0,8 и p(z2)=0,2.
Рассчитаем энтропию
H (Z ) 0,8log 0,8 0,2log 0,2 0,72 (бит).
2 |
2 |
Очевидно, что при кодировании по одной букве lср=1 и æ1=0,72.
Проведем кодирование блоков, состоящих из двух букв. Ниже приведена таблица с разбиениями и соответствующими кодовыми комбинациями.
zizj p(zizj) код.комб.
24
|
z1z1 |
0,64 |
1 |
|
|
|
|
z1z2 |
0,16 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
z2z1 |
0,16 |
0 |
0 |
1 |
|
|
z2z2 |
0,04 |
0 |
0 |
0 |
|
При расчете вероятностей блоков |
|
использовали теорему умножения |
вероятностей для независимых событий
p(zizj) = p(zi)∙p(zj).
Рассчитаем основные характеристики
lср= 0,64∙1+0,16∙2+0,16∙3+0,04∙3 ≈ 1,56;
æ |
2 0,72 |
0,92 . |
|
1,56 |
|||
2 |
|
||
|
|
В последней формуле учли, что энтропия увеличится в 2 раза, согласно (10),
H (Z, Z) H (Z) H (Z) 2 H (Z) .
При кодировании блоков из трех букв эффективность возрастает еще больше.
z1 z1 z1 |
0,512 |
1 |
|
|
|
|
||
|
|
|
|
|
|
|
||
z1 z1 z2 |
0,128 |
0 |
1 |
1 |
|
|
||
z2z1 z1 |
0,128 |
0 |
1 |
0 |
|
|
||
|
|
|
|
|
|
|
|
|
z1 |
z2 |
z1 |
0,128 |
0 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
|
z1 |
z2 |
z2 |
0,032 |
0 |
0 |
0 |
1 |
1 |
z2 |
z2z1 |
0,032 |
0 |
0 |
0 |
1 |
0 |
|
z2z1 z2 |
0,032 |
0 |
0 |
0 |
0 |
1 |
||
|
|
|
|
|
|
|
|
|
z2 |
z2 |
z2 |
0,008 |
0 |
0 |
0 |
0 |
0 |
lср= 0,512∙1+0,128∙9+0,032∙15+0,008∙5 ≈ 2,184;
æ |
3 0,72 |
0,98 . |
|
2,184 |
|||
3 |
|
||
|
|
Таким образом, имеем æ1 ‹ æ2 ‹ æ3 .
Задачи (блок E)для выполнения:
1 – 10. Провести кодирование по одной и блоками по две буквы, используя метод Шеннона – Фано. Сравнить эффективности кодов. Данные взять из задач блока C.
25
|
|
Лабораторная работа 7 |
|
|
||
Алгоритм кода Хаффмана состоит в следующем. Буквы исходного |
||||||
алфавита выписываются в столбец в порядке убывания их вероятностей. |
||||||
Последние две буквы столбца объединяются в одну – вспомогательную |
||||||
букву, которой приписывается суммарная вероятность. Затем формируется |
||||||
следующий столбец с учетом новой буквы по принципу убывания |
||||||
вероятностей. |
|
|
|
|
|
|
Процесс повторяется и продолжается до тех пор, пока останется одна |
||||||
буква с вероятностью, равной 1. Кодовые комбинации легко получить, |
||||||
построив кодовое дерево. Вершиной дерева является последняя буква, |
||||||
процесс ветвления проводится с учетом полученной таблицы, двигаясь в |
||||||
обратном направлении. Каждому из двух ребер, участвующих в |
||||||
объединении, приписывается кодовый символ: ребру с большей |
||||||
вероятностью – «1», с меньшей – «0». Двигаясь от вершины дерева до одной |
||||||
из букв алфавита по соответствующим ребрам, получаем ее кодовую |
||||||
комбинацию. |
|
|
|
|
|
|
Пример 6. Проведем кодирование по методу Хаффмена. Исходный |
||||||
алфавит состоит из шести букв с заданными вероятностями. Составим |
||||||
таблицу. |
|
|
|
|
|
|
zi |
p(zi) |
|
Вспомогательные столбцы |
|
||
z1 |
0,40 |
0,40 |
0,40 |
0,40 |
0,60 |
1,00 |
z2 |
0,25 |
0,25 |
0,25 |
0,35 |
0,40 |
|
z3 |
0,15 |
0,15 |
0,20 |
0,25 |
|
|
z4 |
0,10 |
0,10 |
0,15 |
|
|
|
z5 |
0,06 |
0,10 |
|
|
|
|
z6 |
0,04 |
|
|
|
|
|
Строим кодовое дерево и выписываем кодовые комбинации букв. |
26
0 |
|
|
1 |
|
|
|
|
z1 |
0,40 0,60 |
|
|
|
|
|
0 |
|
1 |
|
|
|
|
|
|
|
|
|
0,350,25 |
0 |
|
|
z2 |
|
|
|
1 |
z3 |
0,150,20 |
|
0 |
|
|
|
|
|
1 |
|
|
|
|
|
0,100,10 |
|
z44 |
0 |
|
|
1 |
||
|
|
|
|
|
|
|
0,060,04 |
|
z54 |
z64 |
z1 |
z2 |
z3 |
z4 |
z5 |
z6 |
0 |
10 |
110 |
1111 |
11101 |
11100 |
Характеристики кода рассчитываются по тем же формулам, что и для кода Шеннона–Фано
H 0,40 log |
0,40 0,25 log |
|
0,25 0,15 log |
0,15 0,10 log |
0,10 |
|
2 |
|
2 |
|
2 |
2 |
|
0,06 log |
0,06 0,04 log 0,04 2,20 (бит); |
|
||||
|
2 |
2 |
|
|
|
|
l 0,40 1 0,25 2 0,15 3 0,10 4 0,10 4 0,06 5 0,04 5 2,25; |
||||||
ср |
|
|
|
|
|
|
|
æ |
|
2,20 |
0,98. |
|
|
|
2,25 |
|
|
|||
|
|
|
|
|
Код Хаффмана можно использовать и для кодирования блоков из букв так, как это было рассмотрено выше для кода Шеннона–Фано, что увеличит эффективность передачи информации.
Задачи (блок F)для выполнения:
1 – 10. Алфавит передаваемых сообщений состоит из независимых букв Si. Вероятности появления каждой буквы в сообщении заданы. Определить и сравнить эффективность кодирования сообщений методом Хаффмана при побуквенном кодировании и при кодировании блоками по две буквы.
№ |
p(Si) |
№ |
|
p(Si) |
|
|
|
27 |
1 |
(0,6;0,2;0,08;0,12) |
6 |
(0,7;0,2;0,06;0,04) |
2 |
(0,7;0,1;0,07;0,13) |
7 |
(0,6;0,3;0,08;0,02) |
3 |
(0,8;0,1;0,07;0,03) |
8 |
(0,5;0,2;0,11;0,19) |
4 |
(0,5;0,3;0,04;0,16) |
9 |
(0,5;0,4;0,08;0,02) |
5 |
(0,6;0,2;0,05;0,15) |
10 |
(0,7;0,2;0,06;0,04) |
Библиографический список:
1.Информатика [Текст]: учебник / В. В. Трофимов [и др.] ; под ред. В. В. Трофимова ; С.-Петерб. гос. ун-т экономики и финансов. - М. : Юрайт, 2011. -
911 с.
2.Информатика [Текст] : учебник / В. В. Трофимов [и др.] ; под ред. В. В. Трофимова ; С.-Петерб. гос. ун-т экономики и финансов (СПбГУЭФ). - М.
:Юрайт : Высшее образование, 2010. - 911 с.
3.Острейковский, Владислав Алексеевич, Информатика : учеб. пособие для студентов учреждений сред. проф. образования / В. А. Острейковский. - М. : Высшая школа, 2003. - 319 с.
4.Романова, Ю.Д. Информатика и информационные технологии: учебное пособие /Ю.Д. Романова, И.Г. Лесничая, В.И. Шестаков, И.В. Мисинг, П.А. Музычкин; под ред. Ю.Д. Романовой. – 3-е изд., перераб. И доп. – М.: Эксмо, 2008. – С. 309-404. – (Высшее экономическое образование).
|
Оглавление : |
Лабораторная работа 1 |
............................................................................................ 2 |
Лабораторная работа 2.......................................................................................... |
10 |
Лабораторная работа 3.......................................................................................... |
15 |
Лабораторная работа 4.......................................................................................... |
17 |
Лабораторная работа 5.......................................................................................... |
19 |
Лабораторная работа 6.......................................................................................... |
23 |
Лабораторная работа 7.......................................................................................... |
26 |
28