Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
praktika.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
7 Мб
Скачать
☆
      1. Арифметичні пристрої Напівсуматор

Напівсуматор – це пристрій, що реалізує функцію «сума за модулем 2»

(М2). Напівсуматори застосовуються при побудові арифметико-логічних пристроїв (АЛП) як елементи, що реалізують функцію нерівнозначності, і як складові частини повних арифметичних суматорів. Таблиця істинності функції, її функціональна схема й умовне зображення показані на рис. 1.16. Очевидно, що на виході напівсуматора буде 1 тільки при комбінаціях вхідних сигналів 01 і 10.

x2 x1 y x1

0 0 0 1

0 1 1

1 0 1 x2

1 1 0

1

&

M2

y

x2

x1

y=x1+ х2

1 y x1 x2

&

21

  1. б) в)

Рис. 1.16. Функція М2: а) таблиця істинності; б) функціональна схема; в) умовне зображення

Повні двійкові суматори

Правила виконання арифметичних операцій

Арифметичні належать до поширених операцій, що виконуються цифровими пристроями.

Правила виконання арифметичних операцій над двійковими числами є аналогічними до відповідних правил десяткової арифметики й зведені в табл. 1.1 і 1.2.

Таблиця 1.1

Правила й приклад виконання арифметичного додавання

Двійкове додавання

Доданки

k -го розряду

Сума k -го розряду

Перенос в k 1-

й розряд

Приклад

0

+

0

=

0

0

+

1100

– перенос

0

1

+

+

1

0

=

=

1

1

0

0

1101

1100

  • 1-й доданок

  • 2-й доданок

1

+

1

=

0

1

11001

– сума

Таблиця 1.2

Правила й приклад виконання арифметичного вирахування

Двійкове віднімання

Зменшуване k -

го розряду

Від’ємне k -го розряду

Різниця k -го розряду

Позика з k 1-го розряду

Приклад

0 – 0 = 0

0

010 – позика

0 – 1 = 1

1

–

1101 – зменшуване

1 – 0 = 1

0

1010 – від'ємний

1 – 1 = 0

0

0011 – різниця

Для виконання арифметичних операцій над двійковими числами зі знаком уводять додатковий (знаковий) розряд, який указує, чи є число позитивним або негативним. Якщо число позитивне, у знаковий розряд проставляється символ 0, якщо негативне, то символ 1. Наприклад, число (+5) з урахуванням знакового розряду (відділяється крапкою) запишеться як 0.101, а число (–3) як 1.011.

При додаванні чисел з однаковими знаками вони складаються, і сумі привласнюється код знака доданків, наприклад:

3

2

510

0.011

0.010

0.1012

3

2

510

0.011

0.010

0.1012

22

Ускладнюється операція додавання чисел з різними знаками (алгебраїчне додавання), що рівносильно відніманню чисел. У цьому випадку необхідно визначити більше за модулем число, зробити віднімання й привласнити різниці знак більшого (за модулем) числа.

Для спрощення виконання цієї операції доданки зображуються у зворотному або додатковому кодах, оскільки відомо, що операція віднімання (алгебраїчного додавання) зводиться до операції простого арифметичного додавання двійкових чисел, зображених у зворотному або додатковому кодах. Позитивні числа в прямому, зворотному й додатковому кодах мають той самий вид, а негативні – різний.

Щоб зобразити негативне двійкове число у зворотному коді треба поставити в знаковий розряд 1, а у всіх інших розрядах прямого коду замінити одиниці нулями, а нулі – одиницями, тобто проінвертирувати число.

При записі негативного двійкового числа в додатковому коді, треба поставити 1 у знаковий розряд, а інші розряди одержати зі зворотного коду числа за допомогою додавання 1 до молодшого розряду.

Наведемо приклади запису двійкових чисел зі знаками в прямому, зворотному й додатковому кодах.

Число

Прямий код

Зворотний код

Додатковий код

+6

0.110

0.110

0.110

-5

1.101

1.010

1.011

-11

1.1011

1.0100

1.0101

Пояснимо процедуру віднімання чисел 5 і 3, 3 і 5. Послідовність і взаємозв'язок операцій наведено у табл. 1.3.

Правила віднімання чисел

Таблиця 1.3

Дія

Зворотний код

Додатковий код

5 3 5 32

x1 0,101

x2 1,100

0,101

+ 1,100

10,001

0,010

Перенос у молодший розряд. Сума позитивна

x1 0,101

x2 1,101

0,101

+1,101

10,010

х

0,010

Одиниця переносу в молодший розряд ігнорується. Сума позитивна

3 5 3 52

x1 0,011

x2 1,010

0,011

+ 1,010

1,101

Перенос у молодший розряд відсутній. Сума негативна й зображена у зворотному коді

x1 0,011

x2 1,011

0,011

+ 1,011

1,110

Сума негативна й зображена в додатковому коді

23

З прикладів випливає, що при використанні зворотного коду в пристрої, який забезпечує підсумовування багаторозрядних двійкових чисел – двійковому суматорі, необхідно передбачити ланцюг циклічного переносу. У випадку використання додаткового коду цей ланцюг відсутній.

З наведеного вище можна зробити наступний висновок. Застосування простого математичного «трюку» (подання двійкових чисел у зворотному або додатковому коді) дозволяє пристосувати двійковий суматор для виконання як операцій додавання двійкових чисел, так і операцій їх віднімання.

Більше того, за допомогою двійкового суматора можна забезпечити також виконання й операцій множення й ділення двійкових чисел (тобто всіх чотирьох арифметичних дій), оскільки множення являє собою послідовне додавання, а ділення – послідовне віднімання.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]