Віднімання двійкових чисел

Спочатку розглянемо операцію віднімання для простого двійкового зображення. Щораз, коли цифра в розряді від ' ємника більша за цифру в тому самому розряді зменшуваного, запозичується 1 з наступного, старшого розряду. Ця запозичена одиниця дорівнює двом одиницям поточного розряду.

Розглянемо приклади виконання операції віднімання.

1. Потрібно від одного двійкового числа відняти інше:

       
       
       

Перший розряд: 1 – 0 = 1. Записуємо 1.

Другий розряд: 0 – 1. Запозичуємо одиницю в старшому розряді. Одиниця зі старшого розряду переходить у молодший як дві одиниці, тому при вирахуванні одержимо 1.

Третій розряд: одиницю цього розряду ми запозичували, тому зараз у розряді 0. Запозичуємо одиницю зі старшого розряду. Знову одержуємо 1.

2. Виконати 10101.11 – 1010.01:

          .    
          .    
          .    

Розглянемо віднімання через додатковий код. Його можна замінити на додавання, якщо від'ємник замінити на число в додатковому коді. Маємо

,

де позначена функція одержання додаткового коду, – число, отримане інверсією числа

Запишемо це:

          (5)
          (–3)
  0 0 1 0 (2)

При алгебраїчному додаванні в додатковому коді перенесення зі старшого розряду відкидається. Тому результатом буде число 10.

Результат алгебраїчного додавання доданків, зображених у додатковому коді, отримується в тому самому коді, що й доданки. Щоб змінити знак числа, необхідно:

a у прямому коді змінити знаковий розряд числа на протилежний;

a у зворотному коді інвертувати код;

a у додатковому коді інвертувати код, додати 1 у молодший розряд.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: