Вычислительные машины, системы и сети. Часть 1. Ветров А.Н. - 8 стр.

UptoLike

Составители: 

[Y]
обр
= 1, 0110
2
.
Дополнительный код положительного числа совпадает с его прямым кодом:
[Х]
доп
=
[Х]
пр
= 0,1101
2
.
Дополнительный код отрицательного числа образуется по следующему правилу: в знаковый разряд числа пишется
единица, в значащих разрядах единицы меняются на нули, а нулина единицы и к младшему разряду числа прибавля-
ется единица.
Иначе можно было бы сказать, что образуется обратный код числа, а затем к младшему разряду прибавляется единица.
Пример.
[Y]
доп
= 1,0110
+ 1
1,0111,
т.е. [Y]
доп
= 1,0111.
Модифицированные коды отличаются тем, что для изображения знака числа в них отводится два разряда. Так, по-
ложительный знак задаётся двумя нулями, а отрицательныйдвумя единицами.
Число Х = –0,11001 в обратном модифицированном коде изображается в следующем виде:
м
обр
][X
= 11,00110. По-
ложительное число Y = 0,01101 в модифицированном обратном коде:
м
обр
][Y
= = 00,01101.
Пример.
Для чисел Х = +0,10010, Y = –0,01100 модифицированный дополнительный код
м
доп
][X
= 00,10010;
м
доп
][Y
= 11,10011
+ 1
11, 10100
Модифицированные коды чисел используются для выявления переполнения разрядной сетки машины, которое
возникает при сложении чисел с одинаковыми знаками. Наибольшее распространение получили в ЭВМ обратный и до-
полнительный модифицированные коды.
Изменение значения каждого разряда числа на обратную величину в ЭВМ производится с помощью инверторов.
1.4. ВЫПОЛНЕНИЕ АРИФМЕТИЧЕСКИХ ОПЕРАЦИЙ
В МАШИНАХ С ФИКСИРОВАННОЙ И ПЛАВАЮЩЕЙ ЗАПЯТОЙ
Для осуществления действий над числовой информацией в ЭВМ можно использовать любое кодирование отрицатель-
ных чисел, что приводит к замене операций вычитания операциями сложения и к выполнению ряда элементарных действий
и преобразований. Вначале рассмотрим порядок выполнения операций сложения чисел (только мантисс), представленных в
виде правильной двоичной дроби, в машинах с фиксированной и плавающей запятой.
При сложении чисел в обратном коде все значащие разряды чисел складываются поразрядно справа налево, а знаковые
разряды складываются как разряды целых чисел; образующаяся при этом в знаковом разряде единица переполнения прибавля-
ется к младшему разряду суммы.
Последнее действие носит название циклического переноса.
Пример.
Сложение двух чисел в обратном коде
Числа Х = –0,10101 и Y = –0,00101.
[Х]
обр
= 1,01010
+
[Y]
обр
= 1,11010
11,00100
1
1,00101
[Х + Y]
пр
= 1,11010; Х + Y = –0,11010.
Следовательно, в машине осуществлены следующие основные микрооперации:
1) образован обратный код первого слагаемого;
2) образован обратный код второго слагаемого;
3) произведено поразрядное сложение;
4) учтена единица переполненияциклический перенос;
5) полученная сумма преобразована в прямой код.
Таким образом, потребовалось пять элементарных действий и преобразований для сложения двух отрицательных чисел.
При сложении чисел в дополнительном коде значащие разряды складываются поразрядно, знаковые разряды как раз-
ряды целых чисел, а образующаяся в знаковом разряде единица переполнения теряется (не учитывается).
Пример.
Сложение двух чисел в дополнительном коде.
Числа Х = –0,10101 и Y = –0,00101;
[Х]
доп
= 1,01011
+
[Y]
доп
= 1,11011
11,00110