Сумматор-вычитатель
Часть серии о | |||||||
Арифметико-логические схемы | |||||||
---|---|---|---|---|---|---|---|
Быстрая навигация | |||||||
Теория |
|||||||
Компоненты
|
|||||||
Категории |
|||||||
См. также |
|||||||
Эта статья нуждается в дополнительных цитатах для проверки . ( июнь 2022 г. ) |
В цифровых схемах сумматор -вычитатель — это схема, способная складывать или вычитать числа (в частности, двоичные ). Ниже представлена схема, которая складывает или вычитает в зависимости от управляющего сигнала. Также возможно построить схему, которая одновременно выполняет и сложение, и вычитание. [ 1 ]
Строительство
[ редактировать ]
Имея n- сумматор для A и B , тогда S = A + B. битный Затем предположим, что числа находятся в дополнении до двух . Затем, чтобы выполнить B − A , теория дополнения до двух говорит, что нужно инвертировать каждый бит A с помощью вентиля НЕ, а затем добавить один. Это дает S = B + A + 1 , что легко сделать с помощью слегка модифицированного сумматора.
Перед каждым входным битом A в сумматоре используется мультиплексор 2-к-1 , где:
- Вход 0 ( I 0 ) равен A
- Вход 1 ( I 1 ) — это A
который имеет управляющий вход D , который также подключен к начальному переносу, то модифицированный сумматор выполняет
- сложение, когда D = 0 или
- вычитание, когда D = 1 .
Это работает, потому что, когда D = 1, вход A в сумматор на самом деле равен A , а перенос равен 1. Добавление B к A и 1 дает желаемое вычитание B − A .
Способ пометить число A как положительное или отрицательное без использования мультиплексора для каждого бита — это использовать вместо этого логический элемент XOR , предшествующий каждому биту.
- Первым входом в вентиль XOR является фактический входной бит.
- Вторым входом каждого вентиля XOR является управляющий вход D.
Это создает ту же таблицу истинности для бита, поступающего в сумматор, что и решение с мультиплексором, поскольку выходной сигнал логического элемента XOR будет таким же, как входной бит, когда D = 0 , и инвертированный входной бит, когда D = 1 .
Роль в арифметико-логическом блоке
[ редактировать ]Сумматоры являются частью ядра арифметико-логического устройства (АЛУ). Блок управления решает, какие операции должен выполнять АЛУ (на основе выполняемого кода операции ), и устанавливает операцию АЛУ. Вход D . в вышеописанный сумматор-вычитатель будет одной из таких линий управления от блока управления
Приведенный выше сумматор-вычитатель можно легко расширить, включив в него больше функций. Например, на каждом B i можно ввести мультиплексор 2-к-1 , который будет переключаться между нулем и B i ; это можно использовать (в сочетании с D = 1 ), чтобы получить двух дополнение до A, поскольку − A = A + 1 .
Следующим шагом будет изменение мультиплекса 2 к 1 на A на мультиплекс 4 к 1 с нулевым третьим входом, а затем повторение этого на B i, что приведет к получению следующих выходных функций:
- 0 (при этом входы A i и B i установлены на ноль и D = 0 )
- 1 (при этом входы A i и B i установлены на ноль и D = 1 )
- A (когда вход B i установлен на ноль)
- B (с входом A i, установленным на ноль)
- A + 1 (с входным значением B i, равным нулю, и D = 1 )
- B + 1 (с входом A i, установленным на ноль, и D = 1 )
- А + Б
- А - Б
- Б - А
- A (где A i установлено на инвертирование; B i установлено на ноль; и D = 0 )
- − A (где A i установлено на инвертирование; B i установлено на ноль; и D = 1 )
- B (где B i установлено на инвертирование; A i установлено на ноль; и D = 0 )
- − B (где B i установлено на инвертирование; A i установлено на ноль; и D = 1 )
Добавив дополнительную логику перед сумматором, один сумматор можно превратить в нечто большее, чем просто сумматор, — в АЛУ .
См. также
[ редактировать ]- Сумматор (электроника)
- Сумматор с переносом вперед
- Сумматор переноса-сохранения
- Добавление машины
- вычитатель
Ссылки
[ редактировать ]- ^ Теджа, Рави (21 апреля 2021 г.). «Двоичный сумматор и вычитатель» . Центр электроники . Проверено 1 июня 2022 г.