На основе устройства сумматора (рис. 7) составлена схема сумматора – вычитателя (рис. 8) с увеличенными функциональными возможностями. Значения его команд управления K0 …K4 приведены таблице 8, всего они составляют 32 набора.
На вход сумматора – вычитателя подаются в параллельном коде два разряда переменной A (A1A0) и два разряда переменной B (B1B0), старшие разряды A1 и B1 соответственно.
Элементы «И», под управлением команд K3, K4, позволяют формировать запрет поступления переменных в сумматор – вычитатель, а элементы «Исключающее ИЛИ», с помощью команд K1 =1, K2 =1 инвертируют переменные.
Для получения отрицательного двоичного числа, добавляется единица в младший разряд (К0 = 1) согласно методу вычитания в дополнительном коде.
Выходные сигналы: результат расчетов младшего разряда S0, результат расчетов старшего разряда S1, P-E перенос – займ в следующий сумматор, это не знаковый разряд.
Рис. 8 Схема двухразрядного сумматора – вычитателя (L2_add_10.ewb)
Сокращенная таблица управления сумматора – вычитателя Таблица 8
Набор |
Команды |
Функции и числа |
||||
K4 |
K3 |
K2 |
K1 |
K0 |
||
1 |
0 |
0 |
0 |
0 |
1 |
1 |
2 |
0 |
0 |
1 |
1 |
1 |
–1 |
3 |
0 |
0 |
1 |
0 |
1 |
0 |
4 |
0 |
0 |
1 |
1 |
0 |
–2 |
5 |
0 |
1 |
0 |
1 |
1 |
–B |
6 |
0 |
1 |
1 |
0 |
0 |
B – 1 |
7 |
0 |
1 |
1 |
0 |
1 |
B |
8 |
1 |
0 |
0 |
0 |
0 |
A |
9 |
1 |
0 |
0 |
0 |
1 |
A + 1 |
10 |
1 |
0 |
0 |
1 |
0 |
A – 1 |
11 |
1 |
0 |
1 |
0 |
0 |
– A – 1 |
12 |
1 |
0 |
1 |
0 |
1 |
– A |
13 |
1 |
0 |
1 |
1 |
0 |
– A – 2 |
14 |
1 |
0 |
1 |
1 |
1 |
– A – 1 |
15 |
1 |
1 |
0 |
0 |
0 |
A + B |
16 |
1 |
1 |
0 |
0 |
1 |
A + B + 1 |
17 |
1 |
1 |
0 |
1 |
0 |
A – B – 1 |
18 |
1 |
1 |
0 |
1 |
1 |
B – A |
19 |
1 |
1 |
1 |
1 |
0 |
– A – B – 2 |
20 |
1 |
1 |
1 |
1 |
1 |
– A – B – 1 |
Задание 5
С помощью двухразрядного сумматора – вычитателя со знаковым разрядом (L2_add_09.ewb) провести арифметические и логические операции, заполнить таблицу 9.
Осуществить проверку результатов моделирования на примере операции вычитания с двух разрядными двоичными числами: A + B = 2 + 1 (строка 4 табл. 9); A – B = 1 – 2 (строка 6 табл. 9).
Результаты проверки занести в табл. 10, 11 соответственно.
Таблица результатов моделирования Таблица 9
№ |
Переменные |
Операция |
Коды команд |
Результат |
||||||
A (N10) |
B (N10) |
K2 |
K1 |
K0 |
N10 |
Знаковый разряд L (N2) |
S1 (N2) |
S0 (N2) |
||
1 |
1 |
0 |
инверсия A |
– |
||||||
2 |
0 |
2 |
инверсия B |
– |
||||||
3 |
1 |
1 |
A + B |
2 |
||||||
4 |
2 |
1 |
A + B |
3 |
||||||
5 |
1 |
1 |
A – B |
0 |
||||||
6 |
1 |
2 |
A – B |
–1 |
||||||
7 |
3 |
1 |
B – A |
–2 |
||||||
8 |
3 |
0 |
B – A |
–3 |
Таблица результатов проверки моделирования Таблица 10
N2 |
N10 |
Комментарий |
|||
знак |
A1 |
A0 |
знак |
модуль |
Первое слагаемое в полном формате |
0 |
1 |
0 |
+ |
2 |
|
знак |
B1 |
B0 |
знак |
модуль |
Второе слагаемое в полном формате |
0 |
0 |
1 |
+ |
1 |
|
знак |
S1 |
S0 |
знак |
модуль |
Результат сложения |
Таблица результатов проверки моделирования Таблица 11
N2 |
N10 |
Комментарий |
|||
знак |
A1 |
A0 |
знак |
модуль |
Уменьшаемое в полном формате |
0 |
0 |
1 |
+ |
1 |
|
знак |
B1 |
B0 |
знак |
модуль |
Вычитаемое в полном формате |
0 |
1 |
0 |
+ |
2 |
|
– |
– |
Инверсия вычитаемого |
|||
0 |
0 |
1 |
+ |
1 |
Единица младшего разряда |
– |
– |
Сумма инверсии и единицы младшего разряда |
|||
Вычитаемое в дополнительном коде (для смены знака) |
|||||
Результат вычитания (сумма первого и второго слагаемых) |
Задание 6
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.