Слайд 2Операции над числами с фиксированной точкой.
Слайд 3Правила сложения двоичных чисел
1
Сложение двоичных чисел осуществляется поразрядно по правилам. Слагаемые
должны иметь одинаковое число разрядов. Для выравнивания разрядной сетки слагаемых можно дописывать незначащие нули слева к целой части и справа к дробной.
Слайд 4Правила сложения двоичных чисел
2
Знаковые разряды участвуют в сложении так же, как и
значащие
Слайд 5Правила сложения двоичных чисел
3
Преобразование кодов производится с изменением знаков чисел. Приписанные незначащие
нули изменяют свое значение при преобразованиях по общему правилу.
Слайд 6Правила сложения двоичных чисел
4
При образовании единицы переноса из старшего знакового разряда:
а)
при использовании обратного кода эта единица складывается с младшим числовым разрядом.
б) при использовании дополнительного кода единица переноса теряется.
Слайд 7Правила сложения двоичных чисел
5
Знак результата формируется автоматически. Результат представляется в коде исходных
слагаемых.
Слайд 9 1. А и В положительные. При суммировании складываются все разряды, включая
разряд знака. Так как знаковые разряды положительных слагаемых равны нулю, разряд знака суммы тоже равен нулю. Например:
Получен правильный результат.
Слайд 10 2. А положительное, B отрицательное и по абсолютной величине больше, чем
А.
Например:
Получен правильный результат в обратном коде. При переводе в прямой код биты цифровой части результата инвертируются: 1 0000111 = –710.
Слайд 11 3. А положительное, B отрицательное и по абсолютной величине меньше, чем
А. Например:
Компьютер исправляет полученный первоначально неправильный результат (6 вместо 7) переносом единицы из знакового разряда в младший разряд суммы!!!
Слайд 12 4. А и В отрицательные. Например:
Полученный первоначально неправильный результат
(обратный код числа –1110 вместо обратного кода числа –1010) компьютер исправляет переносом единицы из знакового разряда в младший разряд суммы.
При переводе результата в прямой код биты цифровой части числа инвертируются: 1 0001010 = –1010.
Слайд 13 5. А и В положительные, сумма А+В больше, либо равна 2n–1,
где n – количество разрядов формата чисел (для однобайтового формата n=8, 2n–1 = 27 = 128). Например:
Семи разрядов цифровой части числового формата недостаточно для размещения восьмиразрядной суммы (16210 = 101000102), поэтому старший разряд суммы оказывается в знаковом разряде. Это вызывает несовпадение знака суммы и знаков слагаемых (знак суммы – отрицателен, знак слагаемых – положительный), что является свидетельством переполнения разрядной сетки.
Слайд 146. А и В отрицательные, сумма абсолютных величин А и В больше,
либо равна 2n–1.
Например:
632 =01111112
Здесь знак суммы тоже не совпадает со знаками слагаемых, что свидетельствует о переполнении разрядной сетки.
Слайд 161. А и В положительные. Здесь нет отличий от случая 1, рассмотренного
для обратного кода, т.к. дополнительный код используется только для отрицательных чисел.
Слайд 17 2. А положительное, B отрицательное и по абсолютной величине больше, чем
А. Например:
Получен правильный результат в дополнительном коде.
При переводе в прямой код биты цифровой части результата инвертируются и к младшему разряду прибавляется единица: 1 0000110 + 1 = 1 0000111 = –710.
Слайд 18 3. А положительное, B отрицательное и по абсолютной величине меньше, чем
А.
Например:
Получен правильный результат. Единицу переноса из знакового разряда компьютер отбрасывает.
Слайд 19 4. А и В отрицательные.
Например:
Получен правильный результат в дополнительном коде.
Единицу переноса из знакового разряда компьютер отбрасывает. Случаи переполнения для дополнительных кодов рассматриваются по аналогии со случаями 5 и 6 для обратных кодов.
Слайд 20Шпаргалка
В прямом коде единицу переноса из знакового разряда мы складываем с младшим
разрядом суммы.
В дополнительном коде единицу переноса из знакового разряда мы отбрасываем.