Арифметические действия с целыми числами.

В большинстве компов операция вычитания не употребляется. Заместо нее делается сложение оборотных либо дополнительных кодов уменьшаемого и вычитаемого. Это позволяет значительно упростить конструкцию АЛУ.

Сложение оборотных кодов. Тут при сложении чисел А и В имеют место четыре главных и два особенных варианта:

1. А и В положительные. При суммировании складываются все разряды Арифметические действия с целыми числами., включая разряд знака. Потому что знаковые разряды положительных слагаемых равны нулю, разряд знака суммы тоже равен нулю. К примеру:

Получен верный итог.

2. А положительное, B отрицательное и по абсолютной величине больше, чем А. К примеру:

Получен верный итог в оборотном коде. При переводе в прямой код биты цифровой части Арифметические действия с целыми числами. результата инвертируются: 1 0000111 = -710.

3. А положительное, B отрицательное и по абсолютной величине меньше, чем А. К примеру:

Компьютер исправляет приобретенный сначало неверный итог (6 заместо 7) переносом единицы из знакового разряда в младший разряд суммы.

4. А и В отрицательные. К примеру:

Приобретенный сначало неверный итог (оборотный код числа -1110 заместо оборотного кода числа -1010) компьютер Арифметические действия с целыми числами. исправляет переносом единицы из знакового разряда в младший разряд суммы. При переводе результата в прямой код биты цифровой части числа инвертируются: 1 0001010 = -1010.

При сложении может появиться ситуация, когда старшие разряды результата операции не помещаются в отведенной для него области памяти. Такая ситуация именуется переполнением разрядной сетки формата числа. Для обнаружения переполнения Арифметические действия с целыми числами. и оповещения о появившейся ошибке в компьютере употребляются особые средства. Ниже приведены два вероятных варианта переполнения.

5. А и В положительные, сумма А+В больше, или равна 2n-1, где n — количество разрядов формата чисел (для однобайтового формата n=8, 2n-1 = 27 = 128). К примеру:

7 разрядов цифровой части числового формата недостаточно Арифметические действия с целыми числами. для размещения восьмиразрядной суммы (16210 = 101000102), потому старший разряд суммы оказывается в знаковом разряде. Это вызывает несовпадение знака суммы и символов слагаемых, что является свидетельством переполнения разрядной сетки.

6. А и В отрицательные, сумма абсолютных величин А и В больше, или равна 2n-1. К примеру:

Тут символ суммы тоже не совпадает со знаками слагаемых Арифметические действия с целыми числами., что свидетельствует о переполнении разрядной сетки.

Сложение дополнительных кодов. Тут также имеют место рассмотренные выше 6 случаев:

1. А и В положительные. Тут нет различий от варианта 1, рассмотренного для оборотного кода.

2. А положительное, B отрицательное и по абсолютной величине больше, чем А. К примеру:

Получен верный итог в дополнительном коде Арифметические действия с целыми числами.. При переводе в прямой код биты цифровой части результата инвертируются и к младшему уровню прибавляется единица: 1 0000110 + 1 = 1 0000111 = -710.

3. А положительное, B отрицательное и по абсолютной величине меньше, чем А. К примеру:

Получен верный итог. Единицу переноса из знакового разряда компьютер отбрасывает.

4. А и В отрицательные. К примеру:

Получен верный итог Арифметические действия с целыми числами. в дополнительном коде. Единицу переноса из знакового разряда компьютер отбрасывает.

Случаи переполнения для дополнительных кодов рассматриваются по аналогии со вариантами 5 и 6 для оборотных кодов.

Сопоставление рассмотренных форм кодировки целых чисел со знаком указывает:

· на преобразование отрицательного числа в оборотный код компьютер затрачивает меньше времени, чем на преобразование в дополнительный Арифметические действия с целыми числами. код, потому что последнее состоит из 2-ух шагов — образования оборотного кода и добавления единицы к его младшему уровню;

· время выполнения сложения для дополнительных кодов чисел меньше, чем для их оборотных кодов, так как в таком сложении нет переноса единицы из знакового разряда в младший разряд результата.


arnika-gornaya-barannik-gornij-referat.html
arnold-irina-vladimirovna.html
arochnaya-podatlivaya-krep.html