= 0,101101 У пр = 0,000111
А дк = 0,101101 У ДК = 0,000111 З дк = А дк + В дк
+ 0,101101
0,000111
0,110100
2) А> 0, В <0, С> 0.
А = +0,101101 В = -0,000111
А пр = 0,101101 У пр = 1,000111
А дк = 0,101101 У ДК = 1,111001 З дк = А дк + В дк
+ 0,101101
1,111001
1 В¬ 0,100110 (1 переносу з знакового розряду суми не враховується)
3) А <0, В> 0, С <0.
А = -0,101101 У = +0,000111
А пр = 1,101101 У пр = 0,000111
А дк = 1,010011 У ДК = 0,000111 З дк = А дк + В дк
+ 1,010011
0,000111
1,011010 (С пр = 1,100110)
4) А <0, В <0, С <0.
А = -0,101101 У = -0,000111
А пр = 1,101101 У пр = 1,000111
А дк = 1,010011 У ДК = 1,111001 З дк = А дк + В дк
+ 1,010011
1,111001
1 В¬ 1,001100 (С пр = 1,110100)
При додаванні в додатковому коді можливо переповнення розрядної сітки (у першому і четвертому випадках). Ознакою переповнення є відміну знака отриманої суми від знаків доданків. br/>
1.1.5 Зворотний код
Числа у зворотному коді представляються в наступному вигляді для двійкових чисел:
В
Зворотний код позитивного числа збігається з його поданням в прямому коді. Зворотний код негативного числа отримують інвертуванням всіх розрядів числа, крім знакового. br/>
[A] пр = 0,10110100; [A] ок = 0,10110100;
[В] пр = 1,10111101; [В] ок = 1,01000010.
1.1.6 Додавання в зворотному коді
У зворотному коді, як і в додатковому, операція віднімання замінюється операцією додавання. При цьому знаковий розряд і цифрова частина числа розглядаються як єдине ціле. Правильний знак суми виходить в результаті підсумовування цифр знакових розрядів операндів і одиниці переносу зі цифрової частини, якщо вона є. Характерною особливість складання у зворотному коді є наявність циклічного переносу (якщо він виникає) з знакового розряду в молодший розряд цифровий частини, завдяки якому здійснюється корекція суми на 2 - n .
Розглянемо всі можливі варіанти додавання чисел у зворотному коді:
1) А> 0, В> 0, С> 0.
А = +0,101101 В = +0,000111
А пр = 0,101101 У пр = 0,000111
А ок = 0,101101 У ок = 0,000111 З ок = А ок + В ок
+ 0,101101
0,000111
0,110100
2) А> 0, В <0, С> 0.
А = +0,101101 В = -0,000111
А пр = 0,101101 У пр = 1,000111
А ок = 0,101101 У ок = 1,111000 З ок = А ок + В ок
+ 0,101101
1,111000
1Гџ0, 100101 (1 переносу з знакового розряду суми додається в
Г 1 молодший значущий розряд результату)
0,100110
3) А <0, В> 0, С <0.
А = -0,101101 У = +0,000111
А пр = 1,101101 У пр = 0,000111
А ок = 1,010010 У ок = 0,000111 З ок = А ок + В ок
+ 1,010010
0,000111
1,011001 (С пр = 1,100110)
4) А <0, В <0, С <0.
А = -0,101101 У = -0,000111
А пр = 1,101101 У пр = 1,000111
А ок = 1,010010 У ок = 1,111000 З ок = А ок + В ок
+ 1,010010
1,111000
1Гџ1, 001010 (1 переносу з знакового розряду суми додається в
Г 1 молодший значущий розряд результату)
1,001011 (С пр = 1,110100)
При додаванні в зворотному коді, як і в додатковому, в 1-м і 4-м випадках можливе переповнення.
Для спрощення виявлення переповнення розрядної сітки ЕОМ використовуються модифікований зворотний і модифікований додатковий коди.
В
При подання позитивних чисел в модифікованому коді в знакових розрядах використовується 00, а негативних - 11. Ознакою переповнення розрядної сітки є різні значення в знакових розрядах.
Приклад 1. br/>
[А] м ок = 00,101101 [В] м ок = 00,011100
00,101101
00,011100
01,001001 - позитивне...