Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методичка по информатике.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
376 Кб
Скачать
☆

3.2. Использование дополнительного кода

Как было показано, отрицательные числа хранятся в памяти ЭВМ в дополнительном двоичном коде со знаковым разрядом. Сложение положительного числа с отрицательным числом, представленным в дополнительном коде, выполняется по обычным правилам. Иногда при таком сложении возникает перенос из старшего разряда, что не приводит к искажению результата.

Рассмотрим примеры операций сложения положительного и отрицательного двоичных чисел.

Пример 3.5. Сложить число 17563 с числом -1594 в двоичной системе счисления

Единица переноса 11 11 1111

1-е слагаемое: 756310 = 01000100100110112

2-е слагаемое: +-159410 = 11111001110001102

Результат: 1596910 = 00111110011000012 .

Пример 3.6. Сложить число 1594 с числом -17563 в двоичной системе счисления:

Единица переноса: 11111 11

1-е слагаемое: 159410 = 00000110001110102

2-е слагаемое: +-1756310 = 10111011011001012

Результат: -1596910 = 11000001100111112 .

3.3. Сложение и вычитание в восьмеричной системе счисления

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

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

1) Если результат не больше семи, то он записывается в текущий разряд.

2) Если результат больше семи, то из результата вычитается восемь, значение этой разности записывается в текущем разряде и формируется перенос в следующий разряд. Единица переноса добавляется к следующему разряду.

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

1) Если цифра в разряде уменьшаемого не меньше цифры в разряде вычитаемого, то результат записывается в текущем разряде.

2) Если цифра в разряде уменьшаемого больше цифры в разряде вычитаемого, то к разности прибавляется восемь, результат сложения записывается в текущем разряде и формируется единица заема из следующего разряда. Единица заема должна учитываться при обработке следующего разряда.

Пример 3.7. Найти разность чисел 2468 и 578, представленных в восьмеричной системе счисления.

Единица заема: 11

Уменьшаемое: _ 246

Вычитаемое: 57

Разность: 167

3.4. Сложение и вычитание в шестнадцатеричной системе счисления

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

1. Сложение двух шестнадцатеричных чисел столбиком выполняется последовательно, начиная с крайнего правого разряда. В каждом разряде числа (цифры) складываются, как десятичные. Возможны два варианта.

1) Если результат не больше пятнадцати, то он записывается в текущий разряд.

2) Если результат больше пятнадцати, то из результата вычитается шестнадцать, значение этой разности записывается в текущем разряде и формируется перенос в следующий разряд. Единица переноса добавляется к следующему разряду.

2. Вычитание двух шестнадцатеричных чисел столбиком выполняется последовательно, начиная с крайнего правого разряда. При этом числа (цифры) в разрядах вычитаются, как десятичные. Возможны два варианта.

1) Если цифра в разряде уменьшаемого не меньше цифры в разряде вычитаемого, то результат записывается в текущем разряде.

2) Если, цифра в разряде уменьшаемого больше цифры в разряде вычитаемого, то к разности прибавляется шестнадцать, результат сложения записывается в текущем разряде и формируется заем из следующего разряда. Единица заема должна учитываться при обработке следующего разряда.

Пример 3.8. Сложить числа da616 и 12f6, представленные в шестнадцатеричной системе счисления:

Единица переноса: 1

1-е слагаемое: da6

2-е слагаемое: 12f

Результат: ed5.