КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Алгебраическое сложение в дополнительном коде
Рассмотрим те же четыре случая сочетания знаков и модулей операндов, что и при рассмотрении сложения в обратном коде в разд. 3.5.1: (Страница57) □Случай 1. Этот случай соответствует обычному сложению прямых кодов чисел: [A>0]c+[B>0]c=A+B. □ Случай 2. [А>0] c+ [В< 0 ] c= A+2 + B, Истинное значение результата в рассматриваемом случае (сумма положительна) будет A+B и коррекция заключается в вычитании 2. □ Случай 3. [А>0]c + [В< 0 ] c= A +2+ В. Этот результат соответствует правильному, поскольку рассматривается случай отрицательной суммы. □ Случай 4. [А<0]i+[В<0]i =2+ A+ 2+ В. Здесь предварительный результат, как и в случае 2°, нуждается в коррекции путем вычитания 2, поскольку истинное значение отрицательной суммы, представленной в дополнительном коде A+B+ 2. Как и в обратном коде, коррекция требуется только в случаях 2 и 4, причем в дополнительном коде коррекция заключается просто в игнорировании переноса, возникающего из знакового разряда. Рассмотрим несколько примеров. Пример 3.15 Сложить два числа в дополнительном коде: (+13/16)+(-3/16)=(+10/16). Результат — на рис. 3.14. Рис. 3.14. Результат выполнения примера 3.15 Пример 3.16 Сложить два числа в дополнительном коде (случай 3). Результат — на рис. 3.15. Рис. 3.15. Результат выполнения примера 3.16 Пример 3.17 Сложить два числа в дополнительном коде (случай 4). Результат — на рис. 3.16. Рис. 3.16. Результат выполнения примера 3.17 Пример 3.18 Сложить два числа в дополнительном коде (одинаковые модули, но разные знаки). Результат — на рис. 3.17. Рис. 3.17. Результат выполнения примера 3.18 Из примера 3.18 видно, что "ноль" в дополнительном коде имеет единственное "положительное" представление. Теперь рассмотрим случаи, когда что соответствует переполнению разрядной сетки. Пример 3.19 Сложить два числа в дополнительном коде: 13/16+5/16=18/16. Результат — на рис. 3.18. Рис 3.18. Результат выполнения примера 3.19 Пример 3.20 Сложить два числа в дополнительном коде: (-11/16)+(-8/16)=(-19/16). Результат — на рис. 3.19. Рис. 3.19. Результат выполнения примера 3.20 Очевидно, для дополнительного кода, как и для обратного, справедливо выражение (3.19). Теперь рассмотрим случаи . Для положительных слагаемых пример 3.12 может относиться как к обратным, так и к дополнительным кодам, но преобразование результата — дополнительного кода в прямой приведет к другому значению. Действительно, Для случая A< 0, B< 0, имеем следующее.
Дата добавления: 2015-04-25; Просмотров: 1022; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |