Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Konspekt_gotove 2012.doc
Скачиваний:
36
Добавлен:
14.08.2019
Размер:
1.47 Mб
Скачать

Алгебраїчне додавання з використанням оберненого коду

Правило запису від’ємного числа в оберненому коді: значення всіх розрядів інвертуються на протилежні, а в знаковому розряді пишеться одиниця. Якщо при додаванні утворюється другий знаковий розряд (1) (перенос із знакового розряду) він додається до молодшого розряду результату.

П риклад1: А1=+0,01011

А2=-0,01100 форма з фіксованою комою

А1 об.=(0)01011; А2 об.=(1)10011

А1 об.2 об.

(0)

0

1

0

1

1

+

(1)

1

0

0

1

1

(1)

1

1

1

1

0

Якщо результат додавання від’ємне число, то воно є представленим в оберненому коді.

Результат: (А12)об.= (1)11110;

А12=-0,00001.

П риклад2: А1=-0,01011

А2=0,01100 форма з фіксованою комою

А1 об.= (1)10100; А2 об.=(0)01100

А1 об.2 об.

(1)

1

0

1

0

0

+

(0)

0

1

1

0

0

додається1

(0)

0

0

0

0

0

+

1

(0)

0

0

0

0

1


Результат: (А12)об.= (0)00001;

А12=+0,00001.

Алгебраїчне додавання з використанням модифікованого коду

Може бути модифікований обернений і модифікований доповнюючий код.

Модифіковані коди відрізняються від звичайного тільки тим, що на знак числа відводяться два розряди "+" – 00, а "-" – 11. Всі дії виконуються аналогічно, але якщо в знакових розрядах результат буде 01 або 10, це свідчить про переповнення розрядної сітки і дуже легко виявляється.

Переповнення розрядної сітки – це явище при якому результат операції має більшу кількість розрядів, ніж кількість розрядів в пристрої, який призначений для його збереження.

Приклад: Обернений код

А1=-0,1010 А1 об.=(1)0101

А2=-0,0111 А2 об.=(1)1000

А1 об.2 об.

(1)

0

1

0

1

+

(1)

1

0

0

0

1

(0)

1

1

0

1

+

1

(0)

1

1

1

0


Одержаний результат неправильний, тому що відбулось переповнення розрядної сітки і ту помилку можна пропустити.

Модифікований обернений код:

А1=-0,1010 А1 об.мод.=(1)(1)0101

А2=-0,0111 А2 об.мод..=(1)(1)1000

А1 об.мод.2 об.мод.

(1)(1)

0

1

0

1

+

(1)(1)

1

0

0

0

1

(1)(0)

1

1

0

1

+

1

(1)(0)

1

1

1

0

Комбінація цифр (1) (0) свідчить про переповнення розрядної сітки.

Для реєстрації результату додавання необхідно п’ять розрядів (без врахування знакових розрядів).

Приклад: А1=-0,01010 А1 об.мод.=(1)(1)10101

А2=-0,00111 А2 об.мод..=(1)(1)11000

А1 об.мод.2 об.мод.

(1)(1)

1

0

1

0

1

+

(1)(1)

1

1

0

0

0

1

(1)(1)

0

1

1

0

1

+

1

(1)(1)

0

1

1

1

0

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]