Реализация вычитания сумматором
НЕТ ВОЙНЕ |
24 февраля 2022 года российское руководство во главе с Владимиром Путиным развязало агрессивную войну против Украины. В глазах всего мира это военное преступление совершено от лица всей страны, всех россиян. Будучи гражданами Российской Федерации, мы против своей воли оказались ответственными за нарушение международного права, военное вторжение и массовую гибель людей. Чудовищность совершенного преступления не оставляет возможности промолчать или ограничиться пассивным несогласием. Мы убеждены в абсолютной ценности человеческой жизни, в незыблемости прав и свобод личности. Режим Путина — угроза этим ценностям. Наша задача — обьединить все силы для сопротивления ей. Эту войну начали не россияне, а обезумевший диктатор. И наш гражданский долг — сделать всё, чтобы её остановить. Антивоенный комитет России |
Распространяйте правду о текущих событиях, оберегайте от пропаганды своих друзей и близких. Изменение общественного восприятия войны - ключ к её завершению. |
meduza.io, Популярная политика, Новая газета, zona.media, Майкл Наки. |
Содержание
Преобразование чисел для вычитания сумматором
Чтобы реализовать вычитание каскадным или двоичным каскадным сумматором, нужно сложить на нём уменьшаемое с противоположным по знаку вычитаемым, так же как и при вычитании обычных чисел. Тогда полученная сумма будет разностью данных чисел: .
Инверсия знака записанного в двоичном виде числа происходит точно так же, как и в дополнительном коде.
Данное число нужно инвертировать и прибавить к нему единицу:
.Например, число
будет записано как , так как , аОптимизация
Очевидно, что реализация преобразования в дополнительный код отдельным сумматором делает вычисление разности в два раза медленнее, чем вычисление суммы. Чтобы ускорить вычисления нужно воспользоваться первым битом переноса в сумматоре: для реализации суммы в него посылают ноль, а для реализации вычитания посылать в него единицу при вычитании и ноль при суммировании. Вместо того, чтобы инвертировать вычитаемое число, можно делать XOR бита первого переноса с каждым битом вычитаемого числа. Таким образом, полученная схема будет работать как для суммирования, так и для вычитания, и при этом вычитание не требует больше времени, чем сложение.
Схема реализации вычитания сумматором
Условные обозначения | Изображение схемы | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|