Составители:
Рубрика:
Обратный код. Обратный код для положительного числа совпадает с
прямым кодом. Для отрицательного числа все цифры числа заменяются на
противоположные (1 на 0, 0 на 1), а в знаковый разряд заносится единица.
Пример.
Для числа +1101 прямой код 0 , 0001101; обратный код 0,0001101.
Для числа –1101 прямой код 1 , 0001101; обратный код 1,1110010.
Дополнительный код. Дополнительный код положительного числа
совпадает с прямым кодом. Для отрицательного числа дополнительный код
образуется путем получения обратного кода и добавлением к младшему
разряду единицы.
Пример.
Для числа +1101:
прямой код обратный код дополнительный код
0,0001101 0,0001101 0,0001101
Для числа –1101:
прямой код обратный код дополнительный код
1,0001101 1,1110010 1,1110011
2.2 Особенности сложения чисел в обратном и дополнительном
кодах.
При
сложении чисел в дополнительном коде возникающая
единица переноса в знаковом разряде отбрасывается.
При
сложении чисел в обратном коде возникающая единица
переноса в знаковом разряде прибавляется к младшему разряду суммы
кодов.
Если результат арифметических действий является кодом
отрицательного числа, необходимо преобразовать его в прямой код. При
этом обратный код преобразуется в прямой заменой цифр во всех разрядах
кроме знакового на противоположные. Дополнительный код преобразуется в
прямой также, как и обратный, с
последующим прибавлением единицы к
младшему разряду.
Пример.
Сложить X и Y в обратном и дополнительном кодах.
а) X= 111, Y= –11;
1) Сложим числа пользуясь правилами двоичной арифметики:
2) Сложим числа используя коды:
Так как результат сложения является кодом положительного числа (знак 0),
то (X+Y)
обр
=(X+Y)
доп
=(X+Y)
пр
.
б) X= –101,Y= –11;
1) Сложим числа пользуясь правилами двоичной арифметики:
X= – 101
Y= – 110
X+Y= –1011
2) Сложим числа используя коды:
Так как сумма является кодом отрицательного числа (знак 1) то необходимо
перевести результаты в прямой код:
а) из обратного кода
(X+Y)
обр
=1,1110100 → (X+Y)
пр
=1,0001011;
б) из дополнительного кода
X= 111
Y= – 11
X+Y= 100
Прямой код Сложение в обратном
коде
Сложение в дополни-
тельном коде
X
пр
=0,0000111
Y
пр
=1,0000011
X
обр
= 0,0000111
Y
обр
= 1, 1111100
1 0,0000011
+1
(X+Y)
об
р
= 0,0000100
X
доп
= 0,0000111
Y
доп
= 1,1111101
1)0,0000100
отбрасывается
(X+Y)
д
оп
= 0,0000100
Прямой код Сложение в обратном
коде
Сложение в дополни-
тельном коде
X
пр
=1,0000101
Y
пр
=1,0000110
X
обр
= 1,1111010
Y
обр
= 1,1111001
1 1,1110011
+1
(X+Y)
об
р
= 1,1110100
X
доп
= 1,1111011
Y
доп
= 1,1111010
1)1,1110101
отбрасывается
(X+Y)
д
оп
= 1,1110101
Обратный код. Обратный код для положительного числа совпадает с X= 111 прямым кодом. Для отрицательного числа все цифры числа заменяются на Y= – 11 противоположные (1 на 0, 0 на 1), а в знаковый разряд заносится единица. X+Y= 100 Пример. Для числа +1101 прямой код 0 , 0001101; обратный код 0,0001101. 2) Сложим числа используя коды: Для числа –1101 прямой код 1 , 0001101; обратный код 1,1110010. Дополнительный код. Дополнительный код положительного числа Прямой код Сложение в обратном Сложение в дополни- совпадает с прямым кодом. Для отрицательного числа дополнительный код коде тельном коде образуется путем получения обратного кода и добавлением к младшему Xпр=0,0000111 Xобр= 0,0000111 Xдоп= 0,0000111 разряду единицы. Yпр=1,0000011 Yобр= 1, 1111100 Yдоп= 1,1111101 Пример. 1 0,0000011 1)0,0000100 Для числа +1101: +1 отбрасывается прямой код обратный код дополнительный код (X+Y)обр= 0,0000100 (X+Y)доп= 0,0000100 0,0001101 0,0001101 0,0001101 Так как результат сложения является кодом положительного числа (знак 0), Для числа –1101: то (X+Y)обр=(X+Y)доп=(X+Y)пр . прямой код обратный код дополнительный код 1,0001101 1,1110010 1,1110011 б) X= –101,Y= –11; 1) Сложим числа пользуясь правилами двоичной арифметики: X= – 101 2.2 Особенности сложения чисел в обратном и дополнительном Y= – 110 кодах. X+Y= –1011 При сложении чисел в дополнительном коде возникающая 2) Сложим числа используя коды: единица переноса в знаковом разряде отбрасывается. При сложении чисел в обратном коде возникающая единица Прямой код Сложение в обратном Сложение в дополни- переноса в знаковом разряде прибавляется к младшему разряду суммы коде тельном коде кодов. Xпр=1,0000101 Xобр= 1,1111010 Xдоп= 1,1111011 Если результат арифметических действий является кодом Yпр=1,0000110 Yобр= 1,1111001 Yдоп= 1,1111010 отрицательного числа, необходимо преобразовать его в прямой код. При 1 1,1110011 1)1,1110101 этом обратный код преобразуется в прямой заменой цифр во всех разрядах +1 отбрасывается кроме знакового на противоположные. Дополнительный код преобразуется в (X+Y)обр= 1,1110100 (X+Y)доп= 1,1110101 прямой также, как и обратный, с последующим прибавлением единицы к младшему разряду. Так как сумма является кодом отрицательного числа (знак 1) то необходимо Пример. перевести результаты в прямой код: Сложить X и Y в обратном и дополнительном кодах. а) из обратного кода а) X= 111, Y= –11; (X+Y)обр=1,1110100 → (X+Y)пр=1,0001011; 1) Сложим числа пользуясь правилами двоичной арифметики: б) из дополнительного кода
Страницы
- « первая
- ‹ предыдущая
- …
- 5
- 6
- 7
- 8
- 9
- …
- следующая ›
- последняя »