Как определить переполнение в 4-битном сумматоре-переносчике? - PullRequest
0 голосов
/ 14 марта 2020

enter image description here

Какая функция зависит от следующих переменных c (знак первого операнда [0/1], знак второго операнда [0/1], знак результата [ 0/1] и знак операции [0/1]) могут идентифицировать переполнение в 4-разрядном сумматоре / субстраторе с волновым переносом?

PS Переполнение происходит только в том случае, если:

  • сумма двух положительных чисел дает отрицательный результат, сумма переполнена.
  • сумма двух отрицательных чисел дает положительный результат, сумма переполнена.

Я только знаю метод с проверкой двух последних переносов, но, похоже, есть другой метод.

1 Ответ

1 голос
/ 14 марта 2020

Ваш PS уже содержит правильную формулу logi c, написанную в прозе (для дополнения). Помните, что число «положительно», если его знаковый бит равен нулю, а число отрицательно, если его знаковый бит равен единице. 1 Это означает, что вы можете перевести «выдает отрицательный результат» в «знак операции 1" . Вы можете таким же образом перевести другие утверждения об операндах или результатах в логические условия c, чтобы в итоге получить общую логическую формулу.


1: я знаю, что ноль не является ни положительным, ни отрицательным, но трактовка нуля как положительного в этом случае не вредит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...