Сумматоры являются основой арифметических устройств и представляют собой комбинационную схему, осуществляющую суммирование двоичных кодов. Многоразрядные суммирующие схемы строятся на основе одноразрядных сумматоров.
Простейшим суммирующим элементом является полусумматор. Он имеет два входа A и B для двух слагаемых и два выхода: суммы S и переноса Р. Таблица истинности сумматора следующая:
Входы | Выходы | ||
А | В | S | P |
Выражение логической функции для суммы S представляет собой значение операции «Исключающее ИЛИ», иначе называемой сложением по модулю 2:
Функциональная схема полусумматора показана на рис.5.42. Полусумматор функционирует без учета сигнала переноса с предыдущих младших разрядов. Схема, осуществляющая учет сигнала переноса, называется полным сумматором. Сумматор работает в соответствии со следующей таблицей истинности:
Входы | Выходы | |||
А i | B i | P i–1 | S i | P i |
Логические функции, описывающие получение сигнала суммы и переноса в произвольном разряде двоичного кода:
|
|
Последние уравнения поддаются минимизации, в результате которой получается:
Функциональная схема, решающая полученные уравнения, приведена на рис.5.43. Эта схема является базовым узлом многоразрядных сумматоров.
На рис.5.44 показан серийный 4-разрядный сумматор К561ИМ1, осуществляющий одновременное (параллельное) суммирование 4 двоичных разрядов. Для увеличения разрядности суммируемых слов такие сумматоры каскадируются последовательным включением сигналов переноса, но такое каскадирование связано с задержкой распространения сигнала переноса по всей цепочке микросхем. Время переноса можно уменьшить, используя специальные блоки ускоренного (сквозного) переноса, что реализуется при конструировании ЭВМ.
Вычитатели двоичных кодов в виде самостоятельных изделий не производятся. На практике операция вычитания заменяется сложением уменьшаемого с вычитаемым, представленными в дополнительном коде.