Приклад №2.
А1 = +0,825 А2 = -0,946
А1 "8421" = (0)1000 0010 0101 код "8421"
А2 "8421" = (1)1001 0100 0110
Додавання в оберненому коді
| А1"8421"об. | (0) | ||||||||||||
| А2"8421" + | (1) | ||||||||||||
| (1) | |||||||||||||
| А2"8421"об. | (1) |
додаємо 0110 до кожної тетради
інвертуємо
| А1"8421"об.+ | (0) | ||||||||||||
| А2"8421"об. | (1) | ||||||||||||
| (1) | |||||||||||||
| - | |||||||||||||
| (1) |
від'ємний рез.
інвертуємо
відняти 0110 від кожної тетради
А1"8421"об. + А2"8421"об. = (1)0001 0010 0001
А1 + А2 =-0,121
Додавання в доповнюючому коді.
| А1"8421"доп. | (0) | ||||||||||||
| + | |||||||||||||
| + | |||||||||||||
| А2"8421"доп | (1) |
додаємо 0110
інвертуємо
додаємо 1
| + | (0) | ||||||||||||
| (1) | |||||||||||||
| (1) | |||||||||||||
| - | |||||||||||||
| (1) | |||||||||||||
| - | |||||||||||||
| (1) |
від’ємне число
віднімаємо 1
інвертуємо
віднімаємо 0110
Результат: А1 + А2 = (1)0001 0010 0001 = (-0,121)10
Алгоритм виконання операцій над десятковими числами в коді “8421”.
1. Додатні числа записуються без змін.
2. Обернений код: Для від’ємних до кожної тетради додаємо +0110, результат інвертуємо. Якщо після додавання чисел буде перенос за знаковий розряд то додаємо +1 до молодшого розряду. Якщо результат додавання є від’ємне число, то необхідно інвертувати результат та відняти –0110 від кожної тетради.
3. Доповнюючий код: Для від’ємних до кожної тетради додаємо +0110, результат інвертуємо та додаємо +1. Перенос за знаковий розряд – відкидається. Якщо результат додавання є від’ємне число, то необхідно відняти –1 (якщо виникає заборонена комбінація – відняти –0110) інвертувати результат та відняти –0110 від кожної тетради.
4. Якщо результат виходить неправильним, необхідно перевірити, чи не виходить після додавання поправки +0110 заборонена комбінація, тоді необхідно додати +0110.
Додати в оберненому коді числа: А1 = -0,15; А2 = +0,18; А1+А2 = +0,03
| (1) | ||||||||||||||
| поправка | ||||||||||||||
| (1) | інвертуємо | |||||||||||||
| А1 оберн | (1) | |||||||||||||
| А2 оберн | (0) | |||||||||||||
| (1) | поправка | |||||||||||||
| (1) | ||||||||||||||
| поправка | ||||||||||||||
| (0) | ||||||||||||||
| +1 | ||||||||||||||
| (0) | ||||||||||||||
| 0, | ||||||||||||||
Додати в оберненому коді числа: А1 = -0,85; А2 = +0,69; А1+А2 = -0,16
| (1) | ||||||||||||
| поправка | ||||||||||||
| (1) | інвертуємо | |||||||||||
| А1 оберн | (1) | |||||||||||
| А2 оберн | (0) | |||||||||||
| (1) | ||||||||||||
| поправка | ||||||||||||
| _ | (1) | |||||||||||
| -0110 | ||||||||||||
| (1) | ||||||||||||
| -0, |
Додати в оберненому коді числа: А1 = -0,25; А2 = -0,62; А1+А2 = -0,87
| А1 | (1) | |||||||||||
| попр. | ||||||||||||
| (1) | інвер. | |||||||||||
| А1 оберн | (1) | |||||||||||
| А2 | (1) | |||||||||||
| попр | ||||||||||||
| (1) | інвер | |||||||||||
| А2 оберн | (1) | |||||||||||
| А1 оберн | (1) | |||||||||||
| А2 оберн | (1) | |||||||||||
| (0) | ||||||||||||
| +1 | ||||||||||||
| (0) | З.к. | |||||||||||
| (1) | інвер | |||||||||||
| (1) | ||||||||||||
| -0110 | ||||||||||||
| (1) | ||||||||||||
| -0, |
Додати в оберненому коді числа: А1 = -0,14; А2 = -0,18; А1+А2 = -0,32
| А1 | (1) | |||||||||||
| попр. | ||||||||||||
| (1) | інвер. | |||||||||||
| А1 оберн | (1) | |||||||||||
| А2 | (1) | |||||||||||
| попр | ||||||||||||
| (1) | інвер | |||||||||||
| А2 оберн | (1) | |||||||||||
| А1 оберн | (1) | |||||||||||
| А2 оберн | (1) | |||||||||||
| (1) | ||||||||||||
| +1 | ||||||||||||
| (1) | З.к. | |||||||||||
| (1) | інвер | |||||||||||
| (1) | ||||||||||||
| -0110 | ||||||||||||
| (1) | ||||||||||||
| -0, |
Додати в доповнюючому коді числа: А1 = -0,14; А2 = -0,18; А1+А2 = -0,32
| А1 | (1) | |||||||||||
| попр. | ||||||||||||
| (1) | інвер. | |||||||||||
| (1) | ||||||||||||
| +1 | ||||||||||||
| А1 допов | (1) | |||||||||||
| А2 | (1) | |||||||||||
| попр | ||||||||||||
| (1) | інвер | |||||||||||
| (1) | ||||||||||||
| +1 | ||||||||||||
| А2 допов | (1) | |||||||||||
| А1 допов | (1) | |||||||||||
| А2 допов | (1) | |||||||||||
| Відк - 1 | (1) | |||||||||||
| +0110 | ||||||||||||
| (1) | ||||||||||||
| -1 | ||||||||||||
| (1) | інвер | |||||||||||
| (1) | ||||||||||||
| -0110 | ||||||||||||
| (1) | ||||||||||||
| -0, |
Додати в доповнюючому коді числа: А1 = -0,63; А2 = +0,79; А1+А2 = +0,16
| А1 | (1) | |||||||||||
| попр. | ||||||||||||
| (1) | інвер. | |||||||||||
| (1) | ||||||||||||
| +1 | ||||||||||||
| А1 допов | (1) | |||||||||||
| А2 допов | (0) | |||||||||||
| (1) | +0110 | |||||||||||
| Відк - 1 | (0) | |||||||||||
| 0, |
Додати в доповнюючому коді числа: А1 = -0,59; А2 = +0,49; А1+А2 = -0,1
| А1 | (1) | |||||||||||
| попр. | ||||||||||||
| (1) | інвер. | |||||||||||
| (1) | ||||||||||||
| +1 | ||||||||||||
| А1 допов | (1) | |||||||||||
| А2 допов | (0) | |||||||||||
| (1) | +0110 | |||||||||||
| (0) | ||||||||||||
| -1 | ||||||||||||
| (0) | З.к | |||||||||||
| -0110 | ||||||||||||
| (0) | інвер | |||||||||||
| (0) | ||||||||||||
| -0110 | ||||||||||||
| (0) | ||||||||||||
| 0, |
Якщо після віднімання 1 виникає заборонена комбінація то необхідно –0110.