Программирование на JAVA


Рис. 4.2. Сложение по модулю и сложение в системе дополнения до двух:

представление операций над целыми числами по модулю N (а); операции над числами в системе дополнения до 2 по модулю 16 (б)

Теперь мы можем описать правила сложения и вычитания n-разрядных чисел со знаком в системе дополнения до двух.

1. Для сложения двух чисел следует сложить их n-разрядные представления, игнорируя сигнал переноса из позиции старшего разряда (MSB). Суммой будет алгебраически правильное значение, представленное в системе допол­нения до двух, если это значение лежит в диапазоне от -2n-l до +2n-1 - 1.

2. Для вычитания чисел Х и У, то есть выполнения операции Х - Y, следует вычислить дополнение числа Y до двух, а затем добавить его к числу X с учетом правила 1. Результатом будет алгебраически правильное значе­ние, представленное в системе дополнения до двух, если это значение ле­жит в диапазоне от -2n-l до +2n-1 - 1.

На рис. 4.3 показано несколько примеров сложения и вычитания 4-разрядных двоичных чисел. Во всех этих примерах ответ оказывается в диапазоне от -8 до 7. Если ответ выходит за границу указанного диапазона, мы говорим, что произош­ло арифметическое переполнение


<< назад вперед >>