logo

Додавання та віднімання з доповненням до 1

У нашому попередньому розділі ми дізналися про різні доповнення, такі як доповнення до 1, доповнення до 2, доповнення до 9 і доповнення до 10 тощо. У цьому розділі ми навчимося виконувати такі арифметичні дії, як додавання та віднімання, використовуючи доповнення до 1. Ми можемо виконувати додавання та віднімання, використовуючи доповнення до 1, 2, 9 та 10.

Додавання з використанням доповнення до 1

Існує три різні випадки, коли ми додаємо два двійкові числа, які є такими:

Випадок 1: Додавання додатного числа з від’ємним числом, коли додатне число має більшу величину.

Спочатку обчисліть доповнення до 1 заданого від’ємного числа. Підведіть підсумок із заданим додатним числом. Якщо ми отримуємо кінцевий перенос 1, він додається до LSB.

Приклад: 1101 і -1001

  1. Спочатку знайдіть доповнення до 1 від’ємного числа 1001. Отже, щоб знайти доповнення до 1, замініть усі 0 на 1 і всі 1 на 0. Доповнення до 1 числа 1001 дорівнює 0110.
  2. Тепер додайте обидва числа, тобто 1101 і 0110;
    1101+0110=1 0011
  3. Додавши обидва числа, ми отримаємо кінцеве перенесення 1. Ми додамо це кінцеве перенесення до LSB 0011.
    0011+1=0100

Випадок 2: Додавання додатного значення з від’ємним значенням у випадку, якщо від’ємне число має вищу величину.

Спочатку обчисліть доповнення до 1 від’ємного значення. Сумуйте його з додатним числом. У цьому випадку ми не отримали кінцевого перенесення. Отже, візьміть доповнення до 1 результату, щоб отримати остаточний результат.

Примітка. Результат є від’ємним значенням.

Приклад: 1101 і -1110

  1. Спочатку знайдіть доповнення до 1 від’ємного числа 1110. Отже, щоб знайти доповнення до 1, ми змінимо всі 0 на 1, а всі 1 на 0. Доповнення до 1 числа 1110 дорівнює 0001.
  2. Тепер додайте обидва числа, тобто 1101 і 0001;
    1101+0001= 1110
  3. Тепер знайдіть доповнення до 1 результату 1110, який є кінцевим результатом. Таким чином, доповнення до 1 результату 1110 дорівнює 0001, і ми додаємо від’ємний знак перед числом, щоб ми могли визначити, що це від’ємне число.

Випадок 3: додавання двох від’ємних чисел

У цьому випадку спочатку знайдіть доповнення до 1 обох від’ємних чисел, а потім додайте обидва ці числа. У цьому випадку ми завжди отримуємо кінцеве перенесення, яке додається до LSB, і для отримання кінцевого результату ми беремо доповнення до 1 результату.

Примітка. Результат є від’ємним значенням.

Приклад: -1101 і -1110 у п'ятибітному регістрі

  1. Спочатку знайдіть доповнення до 1 від’ємних чисел 01101 і 01110. Отже, щоб знайти доповнення до 1, ми змінимо всі 0 на 1, а всі 1 на 0. Доповнення до 1 числа 01110 дорівнює 10001, а 01101 дорівнює 10010.
  2. Тепер ми додаємо обидва додаткові числа, тобто 10001 і 10010;
    10001+10010= 1 00011
  3. Додавши обидва числа, ми отримаємо кінцеве перенесення 1. Ми додамо це кінцеве перенесення до LSB 00011.
    00011+1=00100
  4. Тепер знайдіть доповнення до 1 результату 00100, який є остаточною відповіддю. Отже, доповнення до 1 результату 00100 дорівнює 110111, і додайте перед числом від’ємний знак, щоб ми могли визначити, що це від’ємне число.

Віднімання з доповненням до 1

Нижче наведено кроки для віднімання двох двійкових чисел за допомогою доповнення до 1

  • На першому кроці знайдіть доповнення до 1 від'ємника.
  • Далі додайте додаткове число зі зменшеним.
  • Якщо є перенесення, додайте перенесення до його LSB. Інакше візьміть доповнення до 1 результату, який буде негативним

Примітка. Значення зменшеного завжди віднімається від зменшеного.

приклад 1: 10101 - 00111

Ми беремо доповнення до 1 від’ємного 00111, що вийде 11000. Тепер підсумуйте їх. Так,

10101+11000 =1 01101.

У наведеному вище результаті ми отримуємо біт переносу 1, тому додайте його до LSB даного результату, тобто 01101+1=01110, що є відповіддю.

приклад 2: 10101 - 10111

Ми беремо доповнення до 1 до від’ємного 10111, що вийде 01000. Тепер додайте обидва числа. Так,

10101+01000 =11101.

У наведеному вище результаті ми не отримали біт переносу. Отже, обчисліть доповнення до 1 результату, тобто 00010, яке є від’ємним числом і остаточною відповіддю.