| Профиль |
|---|
Привет: Гость
Сообщения:
Гость, мы рады вас видеть. Пожалуйста зарегистрируйтесь или авторизуйтесь!
|
| Статистика |
|---|

Онлайн всего: 0 Гостей: 0 Пользователей: 0
Зарег. на сайте Всего: 1498 Новых за месяц: 9 Новых за неделю: 2 Новых вчера: 0 Новых сегодня: 0 Из них Администраторов: 2 Модераторов: 3 Проверенных: 80 Обычных юзеров: 1408 Из них Парней: 914 Девушек: 584 |
|
Каталог файлов
ЕЛЕКТРОННО-ОБЧИСЛЮВАЛЬНІ МАШИНИ ТА МІКРОПРОЦЕСОРНІ СИСТЕМИ
[
· Скриншот ]
| 04.06.2011, 13:15 |
| МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
Національний університет кораблебудування
імені адмірала Макарова
А. Г. Марченко, Т. Г. Смикодуб
ЕЛЕКТРОННО-ОБЧИСЛЮВАЛЬНІ МАШИНИ
ТА МІКРОПРОЦЕСОРНІ СИСТЕМИ
Рекомендовано Міністерством освіти та науки України
як навчальний посібник для студентів вищих навчальних закладів
Миколаїв 2007
УДК 004.355 (075.8)
ББК 32.973Я7
М 25
Рекомендовано Міністерством освіти
та науки України як навчальний посібник
для студентів вищих навчальних закладів,
лист No 14/18.2-636 від 10.03.06.
Рецензенти:
д-р техн. наук, проф. Н.Т. Фісун;
д-р техн. наук, проф. Б.М. Політикін;
канд. техн. наук, старш. наук. співроб. В.Ф. Ажищєв
М 25
Марченко А.Г., Смикодуб Т.Г.
Електронно-обчислювальні машини та мікропроцесорні систе-
ми: Навчальний посібник. – Миколаїв: НУК, 2007. – 176 с.
ISBN 978–966–321–080–3
У посібнику подано основи побудови та роботи базових логічних
елементів цифрових схем, поняття функціювання процесорів фірми "Intel"
та основи низькорівневого програмування на мові Assembler, які дозво-
ляють більш детально зрозуміти роботу обчислювальних систем.
Призначений для студентів 1-го курсу зі спеціальностей 7.080401
"Інформаційні управляючі системи та технології" та 7.080403 "Програм-
не забезпечення автоматизованих систем", вивчаючих дисципліни "ЕОМ
та мікропроцесорні системи".
УДК 004.355 (075.8)
ББК 32.973Я7
ISBN 978–966–321–080–3
© Марченко А.Г., Смикодуб Т.Г., 2007
© Видавництво НУК, 2007
ЗМІСТ
Частина перша. ОСНОВИ СХЕМОТЕХНІКИ ................................
Розділ 1. ОСНОВНІ ОПЕРАЦІЙНІ ВУЗЛИ ЕЛЕКТРОННО-
ОБЧИСЛЮВАЛЬНИХ МАШИН ...............................................................
1.1. Подання інформації в електронно-обчислювальні машини ......
1.2. Подання інформації фізичними сигналами .....................................
1.3. Цифрові елементи та їхні порівняльні характеристики .................
1.4. Базові комбінаційні цифрові елементи ............................................
1.5. Похідні логічні елементи .................................................................
1.6. Перетворення логічних функцій ......................................................
1.7. Реалізація основних функцій за допомогою похідних ...................
1.8. Складання логічної функції ..............................................................
1.9. Напівпровідникові прилади ..............................................................
1.10. Загальна характеристика інтегральних мікросхем .....................
1.11. Основні параметри цифрових інтегральних схем ........................
Розділ 2. ТРИГЕР ...................................................................................
2.1. Поняття тригера та його застосування .........................................
2.2. RS-тригер ..........................................................................................
2.3. Статичний синхронний RS-тригер ..................................................
2.4. Статичний синхронний D-тригер ....................................................
2.5. Двотактний RS-тригер .....................................................................
2.6. JK-тригер ..........................................................................................
Розділ 3. ЦИФРОВІ АВТОМАТИ .......................................................
3.1. Лічильники ........................................................................................
3.2. Регістри .............................................................................................
3.3. Дешифратори ....................................................................................
3.4. Мультиплексор та демультиплексори ............................................
3.5. Суматор ............................................................................................
5
5
5
17
20
23
26
29
32
33
38
42
46
50
50
52
55
56
57
60
62
62
69
71
73
74
3
Частина друга. ОРГАНІЗАЦІЙНА МОДЕЛЬ ПРОЦЕСОРА ....... 79
Розділ 1. МІКРОПРОЦЕСОР 8086 ...................................................... 79
1.1. Історія розвитку електронно-обчислювальної машини ............... 79
1.2. Основні характеристики та склад мікропроцесора 8086 .............. 81
1.3. Пристрій обробки даних мікропроцесора 8086 .............................. 83
1.4. Пристрій сполучення з шиною ........................................................ 87
1.5. Організація пам'яті ........................................................................... 89
Розділ 2. ОРГАНІЗАЦІЯ СИСТЕМИ ПЕРЕРИВАННЯ МІКРО-
ПРОЦЕСОРА 8086 ................................................................................. 93
2.1. Моделі обробки запитів на переривання ........................................ 94
2.2. Джерела переривань мікропроцесора 8086 .................................... 95
2.3. Організація переривань і їх процедури ........................................... 99
Частина третя. ОСНОВИ ПРОГРАМУВАННЯ МОВОЮ
АСЕМБЛЕР ............................................................................................ 102
Розділ 1. МОВА ПРОГРАМУВАННЯ АСЕМБЛЕР ......................... 102
1.1. Мова асемблер і її різновиди ......................................................... 102
1.2. Етапи розробки програм мовою асемблер ................................... 104
Розділ 2. ФОРМАТИ КОМАНД І МЕТОДИ АДРЕСАЦІЇ .............. 106
2.1. Формати команд мікропроцесора 8086 ......................................... 106
2.2. Формат двооперандної команди мікропроцесора 8086 ................ 108
2.3. Обчислення виконавчої та фізичної адрес .................................... 110
2.4. Методи адресації операндів мікропроцесора 8086 ....................... 112
Розділ 3. ОРГАНІЗАЦІЯ ПРОГРАМИ МОВОЮ АСЕМБЛЕР ...... 117
3.1. Елементи мови асемблер .............................................................. 117
3.2. Формат команд і псевдооператорів мови асемблер .................... 118
3.3. Структура програми ....................................................................... 119
3.4. Псевдооператори мови асемблер ................................................. 120
Розділ 4. СИСТЕМА КОМАНД МІКРОПРОЦЕСОРІВ INTEL ..... 136
4.1. Команди пересилання даних .......................................................... 136
4.2. Арифметичні команди .................................................................... 142
4.3. Логічні команди ............................................................................... 154
4.4. Команди зсуву ................................................................................. 156
4.5. Команди передачі керування ......................................................... 159
4.6. Ланцюжкові команди ...................................................................... 165
4.7. Команди керування прапорами ...................................................... 173
4
Частина перша
ОСНОВИ СХЕМОТЕХНІКИ
Розділ 1. ОСНОВНІ ОПЕРАЦІЙНІ ВУЗЛИ
ЕЛЕКТРОННО-ОБЧИСЛЮВАЛЬНИХ МАШИН
1.1. Подання інформації в електронно-обчислювальні машини
Подання інформації в електронно-обчислювальні машини (ЕОМ)
базується на системах числення. Системою числення називають су-
купність прийомів і правил, які дозволяють подати будь-яке число за
допомогою деякого алфавіту символів, що називаються цифрами.
Залежно від способу зображення чисел за допомогою цифр системи
числення діляться на позиційні та непозиційні. У непозиційних системах
будь-яке число визначається як деяка функція від чисельних значень
сукупності цифр, що представляють це число. Цифри в непозиційних си-
стемах числення відповідають деяким фіксованим значенням. Прикла-
дом непозиційної системи є римська система числення. В обчислювальній
техніці непозиційні системи не застосовуються.
Систему числення називають позиційною, якщо одна й та сама циф-
ра може приймати різні чисельні значення залежно від її місця розташу-
вання в сукупності цифр, що представляють задане число. Прикладом
позиційної системи є арабська десяткова система числення.
Позиційна система числення характеризується основою та законом,
за яким значення цифри змінюється залежно від місця розташування
числа в записі. Основою позиційної системи числення може бути будь-
яке число S. Кількість символів у наборі алфавіту дорівнює основі систе-
ми числення. Місце кожної цифри в числі називається позицією. У за-
гальному вигляді позиційна система числення може бути представлена
як поліном:
m
X = α m S + α m −1S
m −1
1
0
−1
+ K + α1S + α 0 S , + α −1S α − 2 S
−2
+ K , (1.1)
де S – основа системи; α – кожна з цифр алфавіту даної системи; m –
позиція символу (місце розташування).
5
Комою відокремлюють позиції при додатних степенях основи від
позиції при від'ємних степенях. Відлік позиції цілих чисел виконується
вліво від коми і визначається від 0 до m. Позиція дробової частини числа
відраховується вправо від коми й починається "–1". Число, описане за
допомогою даного полінома, звичайно представляється послідовністю
коефіцієнтів α:
X = α m α m−1 Kα1α 0 , α −1α − 2 K
В електронно-обчислювальних машинах застосовуються системи
числення з основою "2" – двійкова система числення. Припустимими
значеннями для даної системи числення можуть бути тільки дві цифри: 0
і 1. Окремі елементи двійкового коду називаються ще бітами. Вибір
двійкової системи числення визначається широким набором пристроїв,
що мають два стани і яким приписуються значення 0 або 1. Прикладом
такого пристрою може бути тригер, що має два стани. Набір відповідної
кількості таких пристроїв служить для подання багаторозрядного двійко-
вого числа.
Недоліком двійкової системи числення є громіздкість подання чи-
сел. Для підвищення зручності спілкування з ЕОМ застосовуються більш
компактні системи числення – вісімкова, десяткова та шістнадцяткова.
Важливим питанням є переведення значень з однієї системи чис-
лення в іншу. Розглянемо переведення у десяткову систему числення
з двійкової, вісімкової та шістнадцяткової. Візьмемо двійкове число
10110001,1012. Основа системи S = 2. Дане число можна представити як
суму степенів числа 2, помноженого на відповідні коефіцієнти:
10110001,1012 = 1 ⋅ 27 + 0 ⋅ 26 + 1 ⋅ 25 + 1 ⋅ 24 + 0 ⋅ 23 + 0 ⋅ 22 + 0 ⋅ 21 + 0 ⋅ 20,
+ 1 ⋅ 2–1 + 0 ⋅ 2–2 + 1 ⋅ 2–3 = 128 + 0 + 32 + 16 + 0 + 0 + 1, + 0,5 + 0 + 0,125 =
= 177,62510.
У даному прикладі здійснено переведення числа з двійкової систе-
ми числення в десяткову.
Вісімкова система числення має основу системи S = 8 і коефіцієнти
позначаються цифрами від 0 до 7:
261,58 = 2 ⋅ 82 + 6 ⋅ 81 + 1 ⋅ 80, + 5 ⋅ 8–1 = 128 + 48 + 1, + 0,625 = 177,62510.
У шістнадцятковій системі основа системи S = 16, а коефіцієнти
позначаються числами від 0 до 15. Щоб представляти всі цифри, які
перевищують 9 одним знаком, у шістнадцятковій системі числення вико-
ристовуються спеціальні позначення для цифр у вигляді латинських букв:
A = 10; B = 11; C = 12; D = 13; E = 14; F = 15.
6
Подання дробового шістнадцяткового числа та переведення його
в десяткове виконується таким чином:
0В1, А16 = 0 ⋅ 162 + В ⋅ 161 + 1 ⋅ 160, + А ⋅ 16–1 = 0 + 176 + 1, + 10/16 =
= 177,62510.
Відповідність між різними системами числення представлено
в табл. 1.1.
Таблиця 1.1. Відповідність між системами числення
Десяткова
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Системи числення
Двійкова
Вісімкова
0
0000
1
0001
2
0010
3
0011
4
0100
5
0101
6
0110
7
0111
10
1000
11
1001
12
1010
13
1011
14
1100
15
1101
16
1110
17
1111
Шістнадцяткова
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
Переведення з двійкової системи числення у вісімкову або шістнад-
цяткову здійснюється дуже просто з тієї причини, що ці системи мають
основу у вигляді цілого степеня числа 2: 8 = 23 і 16 = 24.
Для переведення цілого багаторозрядного двійкового числа у вісімко-
ве необхідно розбити його на тріади, рухаючись справа наліво, доповню-
ючи при цьому останню тріаду незначущими нулями. Потім кожну групу
з трьох розрядів замінити на відповідну цифру вісімкової системи чис-
лення.
Розглянемо приклад переведення числа 101100012 у вісімкову си-
6
2
1
}} }
= 010110 001 = 2618 .
стему числення: 101100012
7
Для переведення двійкового числа в шістнадцяткове необхідно роз-
бити його на тетради, рухаючись справа наліво та доповнюючи при цьо-
му останню тетраду незначущими нулями. Потім кожну групу з чоти-
рьох розрядів заміняють на відповідну цифру шістнадцяткової системи
числення. Переведемо число 101100012 в шістнадцяткову систему чис-
1
B
}}
лення: 101100012 = 1011 0001 = 0 B116 .
Для зворотного переведення чисел з вісімкової або шістнадцятко-
вої системи у двійкові коди досить замінити кожну цифру числа три-
розрядним або чотирирозрядним двійковим числом. Зважаючи на те,
що обчислювальні машини працюють із двійковими кодами, які мають
розрядність 8, 16 або 32 біти, необхідно одержані двійкові коди подавати
з відповідною розрядністю, доповнюючи ліворуч незначущими нулями
0
7
5
С
}} } }
або їх відкидаючи: 7C 516 = 000001111100 0101 = 00000111110001012 .
Переведення чисел з однієї системи числення в іншу можна вико-
нувати за допомогою алгоритмів ділення та множення: переведення ці-
лої частини виконується за допомогою ділення на основу нової систе-
ми, а дробову частину – шляхом множення на основу нової системи.
Переведення з десяткової системи числення у двійкову виконується
методом послідовного ділення числа на 2 до тих пір, поки частка від
ділення не стане рівною 1. Частка від ділення й остачі представляють
число у двійковій системі числення, які записуються послідовно, почина-
ючи з правої сторони й переміщаючись вліво. Частка буде старшим
розрядом.
Переведемо цілу частину десяткового числа (30,625)10 у двійкове
методом ділення:
– 30
30
0
2
2
–1 5
14 7
–
1 6
1
3010 = 111102.
8
2
–3
2
1
2
1
Для переведення дробової частини десяткового числа у відповідну
частину двійкового числа її необхідно помножити на 2. Отримані цілі ча-
стини від множення виключаються від подальшого множення і є цифра-
ми дробової частини, переведеними в нову систему. Значення першої
цілої частини є першою цифрою після коми. Множення здійснюється
доти, поки дробова частина не буде дорівнювати 0.
Розглянемо переведення дробової частини десяткового числа
30,62510 у двійкове подання:
0 , 62 5
×
?
2
1
250
×
?
2
0
50 0
×
?
2
1
000
30,62510 = 11110,1012.
Може статися, що дріб, який у старій системі числення зображаєть-
ся скінченним числом символів, у новій системі числення буде нескінчен-
ним. У цьому випадку алгоритм множення обривають, діставши потрібну
кількість знаків.
Розглянемо переведення двійкового числа в десяткову систему чис-
лення. Для цього потрібно розділити цілу частину на десять, представле-
не у двійковій системі числення (10102). Перша остача буде представля-
ти молодший розряд. Результат ділення знову розділити на 10102. Оста-
ча буде наступним молодшим розрядом. Ділення продовжувати, поки
результат не стане менше 10102, що і буде старшим розрядом. Всі об-
числення ведуться у двійковій системі числення.
Дробову частину двійкового числа переводять шляхом множення
на 10102. Отримана при множенні ціла частина буде становити перший
розряд після коми. Ціла частина виключається з подальшого множення.
Дробова частина, яка залишилася, множиться знову на 10102, й отри-
мана ціла частина становить наступний розряд. Операцію потрібно по-
вторювати, поки в дробовій частині не будуть одні нулі. Цілі частини
добутків заміняються відповідними цифрами нової системи числення.
Розглянемо переведення двійкового числа 11010101,012 в десят-
9
кове методом ділення:
1 10 101 01
1 01 0
0 01 101
–
1 010
0 011 01
–
10 10
00 11
–
1 01 0
1 01 01 10 10
–
1 01 0
10
0 00 01
(2) 10
0,
+
0
01 0
10
(1) 1 0
(2) 1 0
+
(3) 1 0
1
10 0
10 1
0 10
1 01
1 00
0
1 00
×
?
1 01
0 00
0
0 00
?
×
0
0
0
0
0
(5) 10
У результаті переведення одержимо десяткове число 213,2510.
Двійкова арифметика. Правила виконання арифметичних дій
додавання, віднімання та множення над двійковими числами задаються
в табл. 1.2.
Таблиця 1.2. Правила додавання, віднімання
та множення у двійковій системі числення
Під час додаван-
ня двох одиниць ре-
зультат стає рівним
нулю і формується
перенесення одиниці
в старший розряд. При
відніманні одиниці від нуля необхідно взяти позику в старшого розряду,
тоді значення старшого розряду зменшується на одиницю, а молодший
буде рівним одиниці.
Арифметичні дії над багаторозрядними двійковими числами вико-
нуються за правилами позиційних систем числення. При додаванні підсу-
мовуються цифри відповідних розрядів. Якщо це сопроводжується пере-
несенням, то до суми в старшому розряді додається ще 1. Розглянемо
додавання двох чисел:
Додавання
0+0=0
0 + 1 =1
1+0=1
1 + 1 = 10
Віднімання
0–0=0
1–0=1
1–1=0
10 – 1 = 1
Множення
0·0=0
0·1=0
1·0=0
1·1=1
Перенесення
1 1
1 1 0 1
+
0 0 0 1
1 1 1 1
10
1
1
0
0
1
1
1
1
1
0 1
1 1
0 0
У результаті порозрядного додавання в п'яти випадках виникло пе-
ренесення до старшого розряду.
При віднімання може виникнути ситуація, коли значення від'ємника
більше зменшуваного. У цьому випадку необхідно взяти позику в стар-
шого розряду. Позичена одиниця старшого розряду дорівнює двом оди-
ницям молодшого. Розглянемо віднімання двох чисел:
1 1
1 1
1 1 0 1 1 1 0 1
–
0 0 0 1 0 1 1 1
1 1 0 0 0 1 1 0
П озика
Операція множення багаторозрядних двійкових чисел зводиться до
операцій зсуву та додавання. Елементи зсуву формуються множенням
першого множника на відповідні розряди другого. Якщо розряд другого
множника дорівнює 0, то одержуємо нульовий частинний добуток, а при
рівності розряду 1 результат дорівнює першому множнику. Одержані
частинні добутки зсуваються вліво на таку кількість розрядів, яка відпо-
відає позиції розряду другого множника. Результат множення одержу-
ємо шляхом додаванням отриманих частинних добутків:
×
?
+
1
0 0
1 0 1
1 1 1
1 0
1
1 0
0 1
0 0
1 0
1 0
1
0
1
1
0
1 0
1 1
1 0
0
0 1 0
Операція ділення виконується так само, як і для десяткової ариф-
метики:
1 1 0 0
1 0 1 0
0 0 1 0
–
1 0
0 0
–
1 0
1 0 1
1 0 1
0
1 0
1 0
0 0
Подання від'ємних чисел. В ЕОМ крім додатних чисел можуть
застосовуватися й від'ємні, що спрощує виконання операцій. За знак чис-
11
ла відповідає старший біт, незалежно від застосовуваного типу числа
(байта, слова або подвійного слова). Трактування знакового розряду,
а значить і числа, залежить від застосовуваних команд. Якщо команда
процесора працює з числами зі знаком, то 0 у старшому розряді буде
визначати додатне число, а 1 – від'ємне. Отже, для правильного визна-
чення значення числа, розмірність його повинна бути байт, слово або
подвійне слово. Для подання чисел зі знаком застосовують прямий, зво-
ротний і доповняльний коди. Прямий код звичайно застосовується для
подання додатних чисел.
Зворотний код представляє собою від'ємне число, яке можна одер-
жати інвертуванням значень усіх розрядів двійкового числа на проти-
лежне – заміна 1 на 0 і навпаки. На жаль, дії зі зворотним кодом призво-
дять до подання 0 двома різновидами кодів: для розмірності байт це
буде 000000002 і 111111112.
Щоб уникнути неоднозначності одержання 0, застосовується допов-
няльний код для представлення від'ємного числа. Даний код одержуємо
зі зворотного, до якого додано 1 у молодшому розряді.
Розглянемо десяткове число – 12510. Візьмемо модуль даного чис-
ла й представимо його у двійковому виді: 11111012. Доповнимо це значен-
ня ліворуч нулями до потрібної розмірності – байта, слова. У нашому
випадку доповнимо до байта. Перетворимо наше число спочатку у зво-
ротний код, а потім у доповняльний:
0 1 1 1 1 1 0 1
1 0 0 0 0 0 1 0
1 0 0 0 0 0 1 1
Ч исло +125
Зворотний код
Ч исло –125 (доповняльни й код)
Для перевірки виконаних перетворень складемо два числа з проти-
лежними знаками, які представлені в прямому й доповняльному кодах:
+
1
0 1 1 1 1 1 0 1
1 0 0 0 0 0 1 1
0 0 0 0 0 0 0 0
Ч исло +125
Число – 125 (доповняльний код)
Усі вісім біт мають нульове значення. Перенесення одиниці зі стар-
шого знакового розряду загублено.
Суму двох двійкових чисел одержуємо додаванням їх відповідних
розрядів, включаючи й знакові розряди, як старші. Якщо знаковий розряд
результату додавання дорівнює 0, то сума представлена в прямому коді.
12
Якщо знаковий розряд результату додавання дорівнює 1 – у допов-
няльному і є від'ємною величиною.
Для знаходження абсолютного значення від'ємного числа, поданого
в доповняльному коді, необхідно повторити попередні операції: інверту-
вати всі біти доповняльного коду і до отриманого двійкового числа дода-
ти одиницю:
1 0 0 0 0 0 1 1
0 1 1 1 1 1 0 0
0 1 1 1 1 1 0 1
Число від'ємне
Від'ємне число (доповняльний код)
Зворотний код
Модуль числа –125
Під час роботи з від'ємними числами важливим є питання про діапа-
зон подання чисел. Для знакових чисел розмірністю в байт діапазон
значень становить від –128 до +127.
Віднімемо 5 від 125. Двійкове подання для 5 – це 000001012, для
125 – 011111012, доповняльний код для числа 5 – 111110112.
+
1
0 1 1 1 1 1 0 1
1 1 1 1 1 0 1 1
0 1 1 1 1 0 0 0
+125 (прямий код)
–5 (доповняльний код)
+ 120
Старший знак результату дорівнює 0. Це означає, що одержане
додатне число, яке дорівнює 120.
Віднімемо 125 з 5. Доповняльний код для числа 125 – 100000112.
0 0 0 0 0 1 0 1 +5 (прямий код)
1 0 0 0 0 0 1 1 –125 (доповн яльн ий код)
1 0 0 0 1 0 0 0 Від'є мне число
0 1 1 1 0 1 1 1
0 1 1 1 1 0 0 0
+
Зворотний код
+120 (модуль в ід'є много числа)
В отриманому результаті 100010002 знаковий розряд результату до-
рівнює 1, отже, число від'ємне. Абсолютне значення даного числа дорів-
нює 12010 й, отже, результат дорівнює –12010.
У ряді розглянутих прикладів відбувалося перенесення 1 за межі
розрядної сітки, яка в подальшому зникала. Але одержаний результат
приймали як достовірний. Розглянемо умови достовірності отриманого
результату при додаванні.
Результат додавання є недостовірним у тому випадку, якщо було
13
перенесення у знаковий розряд, а зі знакового розряду не було, або не
було перенесення в знаковий розряд, а зі знакового розряду було.
Якщо відбувалося одночасне перенесення і у знаковий розряд,
і з нього або перенесення не було, то в цьому випадку одержуємо досто-
вірний результат.
Розглянемо два приклади з недостовірними результатами:
+
+
1
0 1 1 1 1 1 0 1 +125
1 0 0 0 0 1 0 1 +5
1 0 0 0 0 0 1 0 Від'ємне число
1 0 0 0 0 0 1 1 –125 (доповняльний код)
1 1 1 1 1 0 1 1 –5 (доповняльний код)
0 1 1 1 1 1 1 0 Дода тне число
У наших прикладах результат перевищує діапазон припустимих зна-
чень, який для чисел розмірністю в байт не повинен перевищувати зна-
чення –128 та +127.
Подання символів. Комп'ютери обробляють не тільки числову, але
й текстову інформацію. Для подання такої інформації застосовують набір
символів, який складається з цифр, букв, розділових знаків, математич-
них, символу повернення каретки та ін.
Для передачі цих символів у комп'ютер кожному з них приписується
номер, який називається кодом символів. Для обміну інформацією між
комп'ютерами символи повинні мати один і той же код.
Один із широко розповсюджених методів представлення символів є
стандарт ASCII-кодів (American Standard Code for Information Interchange
– американський стандартний код для обміну інформацією). Спочатку
кожен символ ASCII-коду містив 7 біт і всього могло бути 128 символів.
Коди від 00h до 1Fh та 7Fh (табл. 1.3) є керуючими символами, які не
друкуються. Наприклад, послання може складатися з символу початку
заголовка SOH (Start of Header), самого заголовка, символу початку
тексту STX (Start of Text), самого тексту, символу кінця тексту ЕТХ
(End of Text) і, нарешті, символу кінця передачі EOT (End of Transmission).
Таблиця 1.3. Керуючі символи ASCII-коду
Код Мнемонічне
символу позначення
00h NUL
01h SOH
14
Призначення символу
Порожній символ (Null)
Початок заголовка, початок блоку даних (Start
of Heading)
Продовж. табл. 1.3
Код Мнемонічне
символу позначення
02h STX
03h ETX
04h EOT
05h ENQ
06h ACK
07h BEL
08h BS
09h HT
0Ah LF
0Bh VT
0Ch FF
0Dh CR
0Eh SO
0Fh SI
10h DLE
11h DC1
12h DC2
13h DC3
14h DC4
15h NAK
16h SYN
17h ETB
18h CAN
19h EM
1Ah SUB
1Bh ESC
1Ch FS
1Dh GS
1Eh RS
1Fh US
7Fh DEL
Призначення символу
Початок тексту (Start of Text)
Кінець тексту (End of Text)
Кінець передачі (End of Transmission)
Запит підтвердження (ENQurity)
Підтвердження прийому (ACKnoligement)
Дзвінок, звуковий сигнал (Bell)
Повернення на одну позицію вліво (Backspace)
Горизонтальна табуляція (Horizontal Tab)
Переключення рядка (Line Feed)
Вертикальна табуляція (Vertical Tab)
Переключення формату, перехід до нової сто-
рінки (From Feed)
Повернення каретки (Carriage Return)
Перехід на нижній регістр (Shift Out)
Перехід на верхній регістр (Shift In)
Завершення сеансу зв'язку (Data Link Escape)
Керування пристроєм 1 (Device Control 1)
Керування пристроєм 2 (Device Control 2)
Керування пристроєм 3 (Device Control 3)
Керування пристроєм 4 (Device Control 4)
Помилка передачі (Negative AcKnolidgement)
Холостий хід передавача (SYNcronous idle)
Кінець передачі блоку (End of Transmission
Block)
Скасування (CANcel)
Кінець носія даних (End of Medium)
Підстановка, заміна символу (SUBstitute)
Перехід, посилка складної команди (ESCape)
Роздільник файлів (File Separator)
Роздільник груп (Group Separator)
Роздільник записів (Record Separator)
Роздільник елементів (Unit Separator)
Видалення символу (DЕlete)
Друковані символи ASCII з кодами від 20h до 7Eh включають в себе
великі й малі букви, цифри, знаки пунктуації та деякі математичні сим-
воли.
Щоб відобразити символи європейських алфавітів і символи псев-
дографіки, ASCII-код був розширений до 256 символів. Однак у міру
15
поширення персональних комп'ютерів постійно виникала потреба в до-
даванні зображень нових символів. Зараз кожна країна світу має свою
власну кодову сторінку, а в багатомовних країнах звичайно застосовується
кілька таких сторінок. Подання символів ASCII-коду в російській кодовій
таблиці MS-DOS (кодова сторінка 866) представлено в табл. 1.4.
Таблиця 1.4. ASCII-коди в російській кодовій сторінці 866
Старша цифра
Молодша 2 3 4 5 6 7 8 9 A
цифра
0 ! 0 @ P ' p А Р 6 & 6 F V f v Ж 7 ? 7 G W g w З
1 " 1 A Q a q Б С 8 ( 8 H X h x И
2 # 2 B R b r В Т 9 ) 9 I Y i y Й
3 $ 3 C S c s Г У A * : J Z j z К
4 % 4 D T d t Д Ф B + ; K [ k { Л
5 5 E U e u Е Х C ‚ < L \ l | М
D – = M ] m } Н
E . > N ^ n ~ О
F / ? O _ o П
B
C
D
E F
а р Ё
б с ё
в т Є
г у є
д ф Ї
е х ї
Ц ж ц Ў
Ч з ч ў
Ш и ш °
Щ й щ •
Ъ к ъ ⋅
Ы л ы √
Ь м ь No
Э н э ¤
Ю о ю
Я п я
ASCII-код підходить для англійської мови, але не дуже зручний
для інших мов. Першою спробою розширення ASCII-кодів був стандарт
ISО 646, що додавав до системи ASCII ще 128 символів, у результаті
чого вийшов восьмибітний код за назвою Latin-1. Додані були в основно-
му латинські букви зі штрихами та діакритичними знаками. Подальший
розвиток призвів до формування кодових сторінок, що являють собою
набір із 256 символів для певної мови або групи мов. Головним недо-
ліком такого підходу є те, що програмне забезпечення ЕОМ повинне
підключити кодову сторінку, що відповідає в даний час оброблюваній
інформації.
Рішенням даної проблеми було створення нової системи з назвою
UNICODE (стандарт ISО 10646). Основна ідея UNICODE – приписува-
16
ти кожному символу єдине постійне 16-бітне значення, яке називається
покажчиком коду. Такий код дозволяє одержувати 65536 кодових по-
кажчиків, у той час як у всіх мовах світу існує в цілому близько 200000
символів. Latin-1 включено до системи UNICODE з присвоєнням кодів
від 0 до 255.
Уся сукупність кодів розділена на блоки об'ємом на 16 кодів. Кожен
алфавіт в UNICODE має ряд послідовних зон. Наприклад (у дужках за-
значене число задіяних кодів): латина (336), грецький (144), російський
(256), вірменський (96), іврит (112) та ін. Кожній із цих мов призначено
більше кодів, ніж у ній є букв, що пов'язано з наявністю в букви декількох
варіантів подання.
Найбільше проблем виникло з поданням символів китайської, японсь-
кої та корейської мов. Тут, крім кодування ієрогліфів китайської та японсь-
кої мов, виконується кодування фонетичних символів і окремих складів
корейської мови.
UNICODE розв'язав багато проблем, пов'язаних з інтернаціоналіза-
цією, але на жаль не зміг вирішити всіх через нестачу кодових покаж-
чиків.
1.2. Подання інформації фізичними сигналами
У цифровій техніці, як правило, доводиться мати справу з сигнала-
ми, що набувають тільки двох значень, яким приписують значення ло-
гічної одиниці та логічного нуля (логічні "1" і "0"). Ці сигнали одержали
назву дискретних сигналів або цифрових.
Аналогами дискретних сигналів з рівнями "0" і "1" можуть бути різні
фізичні явища та процеси, здатні набирати два добре помітних значення,
наприклад: наявність або відсутність електричного струму, електрично-
го імпульсу за певний проміжок часу, напруги (потенціалу) високого та
низького рівнів, напруженості магнітного поля і т. д.
Звичайно цифровий пристрій містить спеціальний блок, що виробляє
синхронізуючі сигнали (синхроімпульси), які відзначають моменти дис-
кретного часу.
Часовий інтервал між двома сусідніми моментами дискретного часу
називається тактом або періодом подання інформації. На рис. 1.1 такий
період представлений інтервалом часу Т між двома сусідніми синхроім-
пульсами.
У цифровій техніці сигнали прийнято поділяти на два види: потен-
ційні й імпульсні.
17
При потенційному спосібі подання інформації двом значенням
двійкової змінної відповідають різні рівні потенціалу, позначувані U0
або U1, що повинні зберігатися протягом всього періоду відліку подання
інформації (такту).
U
T
Син хроім-
пульси
Імпульсн ий
код
U1
U0
1
0
1
1
0
Поте нційний
код
t
1
2
3
4
Рис. 1.1. Потенційний та імпульсний способи подання даних
Значення потенційного сигналу характеризується різницею верхньо-
го U1 та нижнього U0 рівнів напруги. Вибір позначення "1" і "0" для фізич-
них сигналів носить умовний характер. Якщо високому рівню потенціалу
приписують значення "1", а низькому – "0", то маємо справу з так званою
позитивною логікою. При протилежному виборі рівнів потенціалів мова
йде про негативну логіку. Звичайно низька напруга U0 відповідає логіч-
ному нулю, а висока напруга U1 – логічній одиниці. Для ТТЛ-логіки
логічному нулю відповідає потенціал від 0 В до +0,7 В, а логічній одиниці
– від +2 В до +4,5 В. Рівень потенціалу від +0,7 до +2 В вважається
невизначеним значенням, і цифрові елементи при таких рівнях сигналів
не працюють або формують недостовірні дані.
Імпульсний спосіб подання інформації. При даному способі (див.
рис. 1.1) одиничне або нульове значення двійкової змінної зображу-
ються наявністю або відсутністю електричного імпульсу в період
подання інформації між двома сусідніми тактовими імпульсами.
Імпульсом у цифровій та імпульсній техніці називається такий сиг-
нал, що змінює свій рівень протягом такту.
18
Імпульсні сигнали характеризуються швидкими, практично миттє-
вими, стрибкоподібними змінами напруги між двома рівнями. Наявність
такого перепаду напруги між двома синхроімпульсами сприймається як
логічна одиниця, що дозволяє кодувати цифрову інформацію.
Імпульси можуть мати найрізноманітнішу форму: прямокутну, тра-
пецієподібну, трикутну і т. д. Діапазон тривалості імпульсів, з якими ма-
ють справу в сучасній техніці, досить широкий і лежить у межах від
часток наносекунд (1нс = 10–9 с) до мілісекунд (1 мс = 10–3 с) і більше.
Для однакового визначення імпульсів прийнято розрізняти наступ-
ні параметри: амплітуду сигналу, тривалість імпульсу, час перемикання
між двома рівнями сигналу (тривалість фронту й зрізу) та ін.
Амплітуда імпульсу визначається за найбільшим відхиленням на-
пруги або струму Umax (Imax) від нульового або вихідного рівня U0 (I0).
Тривалість імпульсу може визначатися на різних рівнях від його
амплітуди: на рівні 0,9; 0,5 й 0,1 від Umax. Під активною тривалістю імпульсу
tімп мається на увазі його тривалість на рівні 0,5 від амплітудного значен-
ня. Найбільша тривалість імпульсу (Uімп.осн) визначається на рівні U0,1.
Імпульс містить два переходи між рівнями: з нульового стану в оди-
ничний U0–1 і з одиничного в нульовий U1–0. Ці переходи одержали на-
зву фронту й спаду імпульсу. Під тривалістю фронту імпульсу tфр
розуміється інтервал часу, протягом якого напруга змінюється від рів-
ня 0,1 до рівня 0,9 його амплітудного значення. Під тривалістю спаду
імпульсу tсп розуміється інтервал часу, протягом якого напруга змен-
шується від рівня 0,9 до рівня 0,1 його амплітудного значення (рис. 1.2).
Дуже часто в цифровій техніці застосовується задавання числової ін-
U
U1
U 0,9
U max
U 0,5
U 0,1
U0
tімп
t фр
tсп
сп
t
tt імп.осн
імп _о сн
Рис. 1.2. Параметри імпульсного сигналу
19
формації змішаним потенційно-імпульсним способом, коли в одній схемі
обробляються два типи сигналів одночасно – імпульсні та потенційні.
1.3. Цифрові елементи та їхні порівняльні характеристики
В обчислювальній техніці двійкова інформація може бути представ-
лена послідовним або паралельним способом (кодом).
При послідовному способі подання інформації в кожен часовий такт
відображається тільки один розряд двійкової інформації. У цьому випад-
ку всі розряди даних проходять через один канал передачі або прийому
інформації. Обробка інформації відбувається послідовно розряд за роз-
рядом.
При паралельному способі подання інформації всі розряди двійко-
вої інформації з'являються й обробляються одночасно протягом одного
часового такту. У цьому випадку кожен двійковий розряд обробляється
окремим елементом.
Якщо при послідовній передачі інформації двійковий код розгортається
в часі, то при паралельній – у просторі.
Пристрої ЕОМ, залежно від застосовуваного коду, називаються по-
слідовними або паралельними. Послідовні пристрої потребують на об-
робку більше часу, чим паралельні.
У сучасній обчислювальній техніці для досягнення високої швид-
кодії передачі даних застосовуються паралельні системи, хоча вони
й вимагають більшого обсягу апаратури. Якщо є необхідність в економії
апаратної частини, то застосовують послідовну схему передачі даних.
Обробка інформації в обчислювальних системах звичайно виконуєть-
ся з паралельними кодами даних, і чим більша розрядність паралельного
коду, тим більшої ефективності обчислень можна досягти.
Поняття кінцевих автоматів. Математичним апаратом сучас-
них обчислювальних систем є булева алгебра, названа так на честь шот-
ландського математика Джона Буля. В алгебрі Буля безліч змінних скла-
дається з двох елементів: "0" і "1". Ці елементи одержали назву логічно-
го нуля та логічної одиниці. При цьому одиничне значення змінної інтер-
претується як величина у двійковій системі числення або як вказівка на
те, що на вході системи або всередині її відбулася деяка подія.
Математичний апарат булевої алгебри є основою для методів логіч-
ного проектування цифрових пристроїв функціонального призначення,
таких, як шифратор, дешифратор, мультиплексор, демультиплексор, пе-
ретворювачі кодів, суматори та ін. Основними операціями булевої алгеб-
ри є заперечення, логічне додавання (диз'юнкція) і логічне множення (ко-
н'юнкція).
Для вивчення цифрових пристроїв у цілому застосовується аб-
20
страктна математична модель, називана кінцевим автоматом. Кінце-
вим автоматом називається пристрій, для якого визначено такі характе-
ристики:
дискретний час t, що приймає цілі додатні значення (t = 0, 1, 2, ...);
кінцева множина {x1, x2, ..., xn1} можливих значень вхідного сигналу
X (t), які отримали назву вхідного алфавіту автомата;
кінцева множина {y1, y2, ..., yn1} можливих значень вихідного сигна-
лу Y (t), який називається вихідним алфавітом автомата;
кінцева множина внутрішніх станів автомата {q1, q2, ..., qn1};
функція переходів Fп, що визначає стан, у який автомат перейде
в момент часу t + 1, якщо відомо його стан і значення вхідного сигналу
в момент часу t;
функція виходів Fвих, що виражає залежність значення вихідного сиг-
налу автомата від його внутрішнього стану та значення вхідного сигналу
в момент часу t.
Позначаючи поточне значення стану автомата через Q(t), а дії че-
рез функції Fп і Fвих, роботу кінцевих автоматів можна записати за допо-
могою рівнянь:
Q(t + 1) = Fп(Q(t), X(t));
Y(t) = Fвих(Q(t), X(t)).
(1.1)
Знаючи вид функцій Fп і Fвих для будь-якого початкового стану Q (0)
та вхідного сигналу X (t), можна знайти послідовність станів Q (t + 1)
і вихідний сигнал Y (t).
Використовуючи ці положення, є можливість представлення до-
вільного кінцевого автомата сукупністю взаємодіючих автоматів най-
простішого типу з одним або двома внутрішніми станами.
Автомат з одним внутрішнім станом (або найпростіший автомат)
називають комбінаційною логічною схемою. Він складається з логічних
елементів і пристроїв, стан виходів яких цілком визначається комбіна-
цією вхідних сигналів у даний момент часу й не залежать від попередніх
значень цих сигналів. Такі логічні елементи не запам'ятовують інформа-
цію. Вихідне значення комбінаційних логічних схем визначається систе-
мою перемикальних функцій вхідних двійкових змінних:
y1 = Fвих1(x1, x2, ..., xm),
y2 = Fвих2(x1, x2, ..., xm),
.......................................
yn = Fвих n(x1, x2, ..., xm),
де m і n – числа вхідних і вихідних двійкових змінних відповідно.
21
Елементарні автомати з двома внутрішніми станами являють со-
бою логічні схеми з пам'яттю і представлені регістрами, лічильниками
та суматорами.
Дані схеми являють собою пристрій для виконання логічних опе-
рацій, які мають здатність запам'ятовувати окремі стани змінних. Вихідні
значення змінних залежать як від вхідних значень, так і від поточного
стану пристрою й можуть бути описані за допомогою функції (1.1). Зна-
чення вектора станів запам'ятовуються за допомогою тригерів на час,
який відповідає тривалості такту роботи схеми.
Для побудови довільного автомата звичайно використовується об-
межений набір елементарних автоматів. Важливо виконати умову, щоб
функція переходів задовольняла умову повноти. Ця умова полягає в тому,
що для будь-якого стану існує вхідний сигнал, що перемикає автомат
у новий стан, і сигнал, що блокує колишній стан.
Елементи теорії алгебри логіки. Для опису функціонування
цифрових схем за допомогою апарата алгебри логіки, результат обчис-
лень може набирати значення істинності або хибності, привласнюючи
значення "1" істинним і значення "0" хибним висловлюванням.
Для роботи зробимо два припущення:
усяке висловлювання істинне або хибне (закон вилучення третього);
ніяке висловлювання не може бути істинним і хибним одночасно (за-
кон вилучення протиріч).
Основним поняттям алгебри логіки є поняття перемикальної (ло-
гічної) або булевої функції. Функція F = f (x1, x2, ..., xn) називається пере-
микальною (булевою), якщо сама функція F і її змінні x1, x2, ..., xn мо-
жуть набирати тільки два значення – "0" (хибність) або "1" (істина).
Перемикальні функції можуть бути задані різними способами: сло-
весним описанням, таблицями істинності, аналітично та графічно.
Словесне описання логічних функцій робиться у вигляді визначень,
формулювань, умов тих або інших завдань.
Таблицею істинності перемикальної логічної функції називається
таблиця, в якій значення функції поставлене у відповідність значенням її
аргументів.
При аналітичному описанні перемикальні функції подаються у ви-
гляді формул, рівностей і виразів подібно до того, як це робиться в ал-
гебрі. Ці функції можуть бути досить складними. Для їхнього спрощення
(мінімізації) можна використовувати аксіоми та закони алгебри логіки.
При графічному описанні логічних функцій використову-
ються умовні позначки двійкових логічних елементів відповідно до
ГОСТ 2.743–91: кожна логічна функція позначається прямокутником,
що містить основне й, при необхідності, додаткові поля; двійкові змінні
22
є входами, а функція – виходом; входи розташовуються в додатковому
полі ліворуч, а виходи – праворуч; допускається розміщення входів вгорі,
а виходів – внизу.
1.4. Базові комбінаційні цифрові елементи
Будь-яка арифметична дія над двійковими числами може бути вира-
жена через основні логічні функції (операції). В основі побудови обчис-
лювальних систем перебувають три базові елементи: логічне множення
(кон'юнкція); логічне додавання (диз'юнкція); логічне заперечення
(інверсія).
Логічне множення (кон'юнкція) або логічна операція "І" – це функ-
ція, яка двом або більше аргументам ставить у відповідність нове зна-
чення функції, істинне тільки тоді, коли всі вхідні аргументи істинні, тоб-
то нове значення функції буде дорівнювати логічній одиниці тільки в то-
му випадку, якщо значення всіх аргументів дорівнює логічній одиниці.
У формулах (виразах) логічних операцій логічне множення може позна-
чатися одним із наступних символів: & (амперсенд), ×, ·, ∧, або не позна-
чатися. Цифровий елемент логічного множення графічно представля-
ють прямокутником із символом логічного множення "&", розташо-
ваним у правому верхньому куті (рис. 1.3,а).
x1
x2
x1
&
Y
Y
б
x2
a
x1
x1 x2 Y
0 0 0
0 1 0
1 0 0
1 1 1
в
x2
Y
t
0
1
2
3
4
5
6
7
8
г
Рис. 1.3. Логічний елемент "І":
а – графічне подання; б – принцип роботи; в – таблиця істинності; г – часова діаграма
23
Принцип роботи кон'юнкції можна подати двома послідовно розмі-
щеними вимикачами (рис. 1.3,б), які сформують на виході Y сигнал тільки
при одночасно включених вимикачах. На виході Y логічна "1" буде лише
у випадку, якщо на входи х1 та х2 буде одночасно подана логічна "1".
Таблиця істинності для логічного елемента "І" і часова діаграма ро-
боти представлені на рис. 1.3,в й г відповідно. Аналітичне описання ло-
гічної функції кон'юнкція може бути представлене в наступних виглядах:
Y = х1 · х2 = х1 × х2 = х1 ∧ х2.
Логічне додавання (диз'юнкція) або операція логічного "АБО" – це
функція, що двом або більше аргументам ставить у відповідність нове
значення функції, істинне, якщо хоча б один аргумент має значення істин-
ності. Логічною сумою вхідних змінних хі називається двійкова змінна Y,
яка набуває нульового значення тільки тоді, коли всі доданки одночасно
дорівнюють нулю. Логічне додавання позначається за допомогою знаків
+ або ∨. Схематичне подання цифрового елемента логічного додавання
й принцип його роботи представлені на рис. 1.4,а і б відповідно. На виході
Y цифрового елемента логічного додавання буде логічна "1" у випадку,
якщо хоча б на одному із входів – х1 або х2 – присутня логічна "1".
x1
x1
1
Y
Y
x2
x2
б
a
x1
x1 x2 Y
0 0 0
0 1 1
1 0 1
1 1 1
в
x2
Y
t
0
1
2
3
4 5
г
Рис. 1.4. Логічний елемент "АБО":
6
7
8
а – схематичне подання; б – принцип роботи; в – таблиця істинності; г – часова діаграма
24
Цифровий пристрій, що реалізує операцію логічного додавання,
позначається прямокутником, в основному полі якого ставиться символ
"1" – умовна позначка реалізованої функції логічного додавання. Кількість
входів дорівнює кількості вхідних змінних.
Таблиця істинності та часова діаграма роботи логічного елемента
"АБО" представлена на рис. 1.4,в і г відповідно. Аналітичне описання
логічної функції диз'юнкції може бути представлене в наступних вигля-
дах:
Y = х 1 + х2 = х1 ∨ х 2 .
Логічне заперечення (інверсія) або логічний елемент "НІ" – це ло-
гічна функція, яка кожному аргументу ставить у відповідність нове зна-
чення, що заперечує вхідне.
Символом логічного заперечення є мітка у вигляді кружечка, що
розміщається на перетині лінії входу або виходу та прямокутника. В опи-
саннях операцій логічне заперечення позначається рискою над аргумен-
том.
Цифровий елемент логічного заперечення представлений на
рис. 1.5,а. Таблиця істинності та часова діаграма роботи логічного еле-
мента "НІ" представлені на рис. 1.5,б й в відповідно. Аналітичне опи-
сання заперечення "НІ" може бути представлене в наступному вигляді:
Y=x.
1
x
Y
Y
a
x
0
1
x
Y
1
0
t
0
1 2
3
4 5
в
6
7
8
б
Рис. 1.5. Логічний елемент "НІ":
а – схематичне подання; б – таблиця істинності; в – часова діаграма
25
1.5. Похідні логічні елементи
Крім трьох базових елементів, у цифровій техніці широко застосову-
ються ще чотири логічних елементи, що одержали назви похідних: "ви-
ключаюче АБО", "виключає АБО-НІ", заперечення кон'юнкції (штрих
Шеффера), заперечення диз'юнкції (стрілка Пірса).
Логічний елемент заперечення кон'юнкції (штрих Шеффера) скла-
дається з послідовно з'єднаних елемента логічного "І" та логічного еле-
мента "НІ" (логічний елемент "І-НІ"). Графічне позначення логічного
елемента "І-НІ" представлене на рис. 1.6,а та б (на рис. 1.6,а детальний
опис елемента "І-НІ"). Функція буде набирати значення логічної одиниці
в тому випадку, коли хоча б один із вхідних сигналів буде логічним ну-
лем. Алгебраїчний запис операції Шеффера може бути представлений
наступним виразом:
Y = x1 ⋅ x 2 = x1 ∧ x 2 .
х11
x
&
&
1
1
Y
Y
х1
x1
х2
x2
xх 2
2
a
a
х11
x
хx22
бб
Y
Y
x11 xх2 Y
х 2 Y
0
0
&
&
11 11
0
0
1
1
00
0
1
11
1 0 1
1 1 0
в
1
0
Y
Y
t
t
0 1 2
0 1 2
3
3 4
5
6 7
6 7
8
8
г
г
Рис. 1.6. Елемент логічного заперечення "І-НІ":
а – функціональна структура елемента; б – схематичне подання; в – таблиця істинності;
г – часова діаграма
Таблиця істинності та часова діаграма роботи логічного елемента
"І-НІ" представлені на рис. 1.6,в й г відповідно.
Логічний елемент заперечення диз'юнкції (стрілка Пірса) скла-
дається з послідовно з'єднаних логічних елементів "АБО" та "НІ"
(рис. 1.7,а й б). Функція буде приймати значення логічної одиниці в тому
26
випадку, коли всі вхідні сигнали будуть логічним нулем. Алгебраїчний
запис стрілки Пірса може бути поданий наступними виразами:
Y = x1 + x 2 = x1 ∨ x 2 .
хx1
1
1
&
1
1
Y
Y
х1
хx2
2
х2
a
a
х1x1
1
&
х2 2
x
б
б
Y
Y
x1
х1
0
0
0
0
1
1
1
1
x2
х2
0
0
1
1
0
0
1
1
в
Y
Y
1
1
0
1
0
0
1
Y
t
0 1
2
0
3 4
5
6 7
8
г
Рис. 1.7. Логічний елемент логічного заперечення "АБО-НІ":
а – функціональна структура елемента; б – схематичне подання; в – таблиця істинності;
г – часова діаграма
Таблиця істинності та часова діаграма роботи логічного елемента
"АБО-НІ" представлені на рис. 1.7,в та г відповідно.
Логічний елемент "виключаюче АБО" (суматор за модулем 2)
представляє функцію, що набирає значення логічної одиниці, якщо скла-
дові її аргументи мають різні значення. Алгебраїчний запис суматора за
модулем 2 може бути представлений наступними виразами:
Y = x1 ⊕ x 2 = x 1 ⋅ x 2 + x 1 ⋅ x 2 .
Графічне позначення логічного елемента "виключаюче АБО", його
часова діаграма роботи й таблиця істинності представлені на рис. 1.8.
Логічний елемент "виключаюче АБО-НІ" представлений на
рис. 1.9. Функція буде набирати значення логічної одиниці в тому випад-
ку, якщо складові її аргументи мають рівні значення. Алгебраїчний запис
даного елемента може бути представлений наступним виразом:
Y = x1 ⊕ x 2 = x 1 ⋅ x 2 + x 1 ⋅ x 2 .
27
x1
=1
Y
x1
x2
x2
a
a
x1 x2 Y
0 0 0
0 1 1
1 0 1
б
б
t
0
1
1
Y
1
2
3
4
0
5
6
7
8
в
в
Рис. 1.8. Логічний елемент " виключаюче АБО":
а – схематичне подання; б – таблиця істинності; в – часова діаграма
x1
=1
Y
x1
x2
a
a
x2
x1 x2 Y
0 0 1
0 1 0
1 0 0
1 1 1
Y
t
0
1
2
3
4
в
в
5
6
7
б
б
Рис. 1.9. Логічний елемент "виключаюче АБО-НІ":
а – схематичне подання; б – таблиця істинності; в – часова діаграма
28
8
1.6. Перетворення логічних функцій
При всій складності цифрових пристроїв вони базуються на прин-
ципі багаторазового повторення простих базових схем. Зв'язок між схе-
мами будується на основі формальних методів. Інструментом такої по-
будови служить булева алгебра, що у цифровій техніці називається також
алгеброю логіки.
Розглянемо властивості основних логічних елементів.
Операції з "0" та "1". Якщо на один із входів логічного елемента
"І" подати логічну "1", то на виході буде повторюватися сигнал, що над-
ходить на другий вхід. Однак при подачі логічного "0" на один із вхо-
дів, на виході буде "0", незалежно від станів іншого входу. Розглянуті
властивості можна описати наступним чином: х ⋅ 1 = х і х ⋅ 0 = 0
(рис. 1.10,а та б).
Для логічної схеми "АБО" подача логічної "1" на один із входів одно-
значно визначає одиничний стан на виході, а логічний "0" на вході ви-
магає перевірки інших входів на наявність логічної "1". На виході буде
логічний "0" при наявності логічних нулів на всіх входах. Розглянуті
властивості можна подати в наступному вигляді: х + 1 = 1 і х + 0 = х
(рис. 1.10,в та г).
Правило заперечення. Якщо на вході логічного елемента "І" по-
дати протилежні сигнали, то на виході завжди буде логічний "0", тому що
один із сигналів завжди буде дорівнювати логічному нулю (рис. 1.10,ґ),
тобто x ⋅ х = 0 .
Для логічного елемента "АБО" у цьому випадку на виході завжди
буде присутня логічна "1", тому що один із вхідних сигналів завжди буде
дорівнювати логічній "1" (рис. 1.10,д), тобто x + х = 1 .
Правило подвійного заперечення. Якщо сигнал двічі проінвер-
тувати, то він не змінить свого значення на виході x = x.
Комутативний (переміщувальний) закон. При операціях логіч-
ного додавання або множення при зміні місць аргументів результат за-
лишається незмінним:
х1 + х2 = х2 + х1;
х1 ⋅ х2 = х2 ⋅ х1.
Асоціативний (сполучний) закон. В операціях логічного дода-
вання або множення групування аргументів не змінює результат опе-
рації:
x1 ⋅ (x 2 ⋅ x 3 ) = (x1 ⋅ x 2 ) ⋅ x 3 ;
x1 + (x 2 + x 3 ) = (x1 + x 2 ) + x 3 . |
|
Категория: Учебники | Добавил: irdis_13
|
| Просмотров: 429 | Загрузок: 0
| Комментарии: 1
| Рейтинг: 0.0/0 |
| Всего комментариев: 1 | |
0 1
Еkатерина (01.05.2013 20:09)
▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼ ►██████████████████████████████◄◄◄◄◄◄ ►█████████8 809 505-3755█████████◄◄◄◄◄◄ ►██████►СЕКС ПО ТEЛЕФOНУ◄██████◄◄◄◄◄◄ ►████МЫ ИСПOЛНИM ТBОИ СAМЫЕ████◄◄◄◄◄◄ ►█████СОKРОBEННЫЕ ЖEЛАНИЯ██████◄◄◄◄◄◄ ►██████████▼▼ЗBOНИ▼▼███████████◄◄◄◄◄◄ ►██████♂♂▼▼▼▼▼▼▼▼▼▼▼♂♂██████◄◄◄◄◄◄ ►██████►►8-809 505 3755◄◄██████◄◄◄◄◄◄ ►██████♂♂▲▲▲▲▲▲▲▲▲▲▲♂♂██████◄◄◄◄◄◄ ►██████████████████████████████◄◄◄◄◄◄ ►██>АНОНИМНO! КОНФИДЕНЦИАЛЬНО<██◄◄◄◄◄◄ ►█████Стоимoсть 45 руб/мин+НДС.█████◄◄◄◄◄◄ ►███Только для сoвeршеннолeтних█████◄◄◄◄◄◄ ►██████████████████████████████◄◄◄◄◄◄ ▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲
|
|
|
|
|
|