- •3. Прикладна теорія цифрових автоматів.
- •Двійкова сч. Переваги і недоліки двійкової сч. Переведення довільного числа з десяткової сч в двійкову сч і навпаки. Двійкова позиційна система числення
- •Переведення числа з двійкової системи числення в десяткову та з десяткової у двійкову
- •2. Двійкова арифметика (виконання операцій додавання, віднімання, множення і ділення в 2-сч).
- •7. Основні властивості двійкових чисел. Правила «швидкого рахунку». Двійкова арифметика
- •3. Шістнадцяткова сч. Шістнадцяткова арифметика.
- •4. Сч з основою р. Переведення довільного числа з десяткової сч в сч з основою р і навпаки. Системи числення з довільною основою
- •5. Виконання арифметичних дій в сч з основою р.
- •6. Змішані сч. Запис чисел в змішаних сч. Системи з кратними основами. Теорема для сч з кратними основами
- •8. Дві форми комп’ютерного представлення числових даних. Їх переваги і недоліки. Діапазон представлення чисел в цих випадках. Представлення комп’ютерної інформації Форма з фіксованою крапкою
- •Форма з плаваючою крапкою
- •9. Представлення довільного числа в формі з плаваючою крапкою. Мантиса та порядок числа. Нормалізована форма представлення числа. Форма з плаваючою крапкою
- •11. Поняття про булеві функції. Три способи задання булевих функцій. Таблиця істинності. Номер двійкового набору. Повністю та неповністю визначені булеві функції. Основні поняття
- •12. Основні булеві функції однієї і двох зміних. Унарна і бінарні операції булевої алгебри. Суперпозиція булевих функцій. Три аксіоми булевої алгебри. Алгебра Жегалкіна. Теореми де Моргана.
- •15. Метод Квайна. Співвідношення склеювання та поглинання. Метод Квайна-Мак-Класкі. Метод діаграм Вейча. Сусідні набори. Загальне правило склеювання на діаграмі Вейча. Метод квайна
- •Метод квайна-мак-класкі
- •Метод діаграм вейча
2. Двійкова арифметика (виконання операцій додавання, віднімання, множення і ділення в 2-сч).
7. Основні властивості двійкових чисел. Правила «швидкого рахунку». Двійкова арифметика
Арифметичні дії в двійковій системі (двійковій арифметиці) виконуються за звичайними для позиційних систем правилами (алгоритмами), які нам відомі з десяткової арифметики, але при цьому, звичайно, використовуються таблиці додавання і множення двійкової системи. Таблиця додавання
0+0=0 0+1=1 1+0=1 1+1=102 (додавання нуля не міняє числа, а один плюс один буде два).
Таблиця множення 0∙0=0 0∙1=0 1∙0=0 1∙1=1 (число, помножене на нуль, є нуль; множення на один не міняє числа).
Додавання багатозначних чисел відбувається так само, як і в десятковій системі, тобто порозрядно, починаючи з молодшого.
1011012 - 1 доданок
+ 101002 - 2 доданок
10000012 - сума
Перевіримо правильність наших обчислень:
1011012=1∙25+0∙24+1∙23+1∙22+0∙21+1∙20=32+0+8+4+0+1=4510
101002=1∙24+0∙23+1∙22+0∙21+0∙20=16+0+4+0+0=2010
4510+2010=6510
10000012=1∙26+0∙25+0∙24+0∙23+0∙22+0∙21+1∙20=64+0+0+0+0+0+1=6510
Віднімання
0-0=0 1-0=1 1-1=0 102-1=1
Знайдемо: 1110101112-11000012
1110101112
- 11000012
1011101102
Крапки, поставлені над деякими розрядами, показують, що в двійковій системі одиниця відміченого розряду роздроблюється на дві одиниці вищого розряду.Множення
111012∙11012
111012 - множник
11012 - множник
11101 - множене
+11101 - множене, зсунуте на 2 розряди вліво
11101 - множене, зсунуте на 3 розряди вліво
1011110012 - добуток
Перевірка:
111012=1∙24+1∙23+1∙22+0∙21+1∙20=16+8+4+1=2910
11012=1310; 29∙13=37710
1011110012=1∙28+0∙27+1∙26+1∙25+1∙24+1∙23+0∙22+0∙21+1∙20=256+0+64+32+16+8++0+1=37710 .
Отже, в двійковій арифметиці при множенні не потрібна таблиця множення. Не треба знаходити добутки першого множника на значення послідовних розрядів другого множника, так як значення цих розрядів або 1 або 0.
Достатньо записати знпчення першого множника одне під одним із зсувом на один розряд; у випадку рівності якого-небудь розряду другого множника нулю, його зсувають на два розряди.
Приклад: 11011112∙1011012
11011112
1011012
1101111
1101111
1101111
1101111 __
10011100000112
3. Шістнадцяткова сч. Шістнадцяткова арифметика.
Представим, что необходимо просмотреть содержимое некотоpых байт в
памяти (это встретится в следующей главе). Требуется oпределить содержимое
четырех последовательных байт (двух слов), которые имеют двоичные
значения. Так как четыре байта включают в себя 32 бита, то специалисты
разработали "стенографический" метод представления двоичных данных. По
этому методу каждый байт делится пополам и каждые полбайта выражаются
соответствующим значением. Рассмотрим следующие четыре байта:
Двоичное: 0101 1001 0011 0101 1011 1001 1100 1110
Десятичное: 5 9 3 5 11 9 12 14
Так как здесь для некоторых чисел требуется две цифры, расширим
систему счисления так, чтобы 10=A, 11=B, 12=C, 13=D, 14=E, 15=F. таким
образом получим более сокращенную форму, которая представляет содержимое
вышеуказанных байт:
59 35 B9 CE
Такая система счисления включает "цифры" от 0 до F, и так как таких
цифр 16, она называется шестнадцатиричным представлениeм.
Шестнадцатиричный формат нашел большое применение в языке ассемблера.
В листингах ассемблирования программ в шестнадцатеричном формате показаны
все адреса, машинные коды команд и содержимое констант. Также для отладки
при использовании программы DOS DEBUG адреса и содержимое байтов выдается
в шестнадцатиричном формате.
Если немного поработать с шестнадцатиричным форматом, то можно быстро
привыкнуть к нему. рассмотрим несколько проcтых примеров шестнадцатиричной
арифметики. Следует помнить, что после шестнадцатиричного числа F следует
шестнадцатиричное 10, что равно десятичному числу 16.
6 5 F F 10 FF
4 8 1 F 10 1
- - -- -- -- ---
A D 10 1E 20 100
Заметьте также, что шест.20 эквивалентно десятичному 32, шест.100 -
десятичному 256 и шест.100 - десятичному 4096.
В данной книге шестнадцатиричные числа записываются, например, как
шест.4B, двоичные числа как дв.01001011, и десятичные числа, как 75
(отсутствие какого-либо описания предполагает десятичное число).
Исключения возможны, когда база числа очевидна из контекста. Для индикации
шест. числа в ассемблерной программе непосредственно после числа ставится
символ "H", например, 25H (десятичное значение 37). Шест. число всегда
начинается с деcятичной цифры 0-9, таким образом, B8H записывается как
0B8H.
В прил.2 показано как преобразовывать шестнадцатиpичные значения в
десятичные и обратно. Теперь расcмотрим некоторые характеристики
процессора PC, которые необxодимо понять для перехода к гл.2.
