Выполним вычитание в столбик в двоичной системе:
Исходные числа:
10111002
101112
Выравниваем числа по правому краю и вычитаем:
10111002
- 101112
------------------
Начинаем вычитание справа налево:
0 - 1: нужно занять у соседнего разряда. Становится 10 - 1 = 1. Предыдущий разряд становится 0.
1011(0)(10)2
- 101112
------------------
1
Следующий разряд: 0 - 1. Снова занимаем. Становится 10 - 1 = 1. Предыдущий разряд становится 0.
101(0)(10)02
- 101112
------------------
11
Следующий разряд: 0 - 1. Снова занимаем. Становится 10 - 1 = 1. Предыдущий разряд становится 0.
10(0)(10)002
- 101112
------------------
111
Следующий разряд: 0 - 0 = 0.
10(0)(10)002
- 101112
------------------
0111
Следующий разряд: 1 - 1 = 0.
10111002
- 101112
------------------
00111
Остается старший разряд 10. Он просто переносится вниз.
10111002
- 101112
------------------
1001112
Проверка: 10111002 = 64 + 16 + 8 = 8810. 101112 = 16 + 4 + 2 + 1 = 2310. 88 - 23 = 6510. 1001112 = 32 + 4 + 2 + 1 = 3910. Ошибка в вычислениях.
Давайте попробуем еще раз, более аккуратно:
| 1 | 0 | 1 | 1 | 1 | 0 | 0 | |
|---|---|---|---|---|---|---|---|
| - | 1 | 0 | 1 | 1 | 1 | ||
| Результат | 1 | 0 | 0 | 0 | 1 | 0 | 1 |
Перевод в десятичную систему:
Проблема в том, что при вычитании 1011100 - 10111, мы получаем:
1011100
- 10111
------------
1000001
Давайте разберем по шагам:
Более понятный способ: привести оба числа к одинаковой длине.
10111002
0101112
Вычитаем:
1011100
- 010111
---------
Справа налево:
0-1: занимаем. 10-1=1. Предыдущий 0 становится 1, предыдущий 1 становится 0.
1011(0)(10)0
- 010111
---------
1
0-1: занимаем. 10-1=1. Предыдущий 1 становится 0.
101(0)(10)00
- 010111
---------
11
0-1: занимаем. 10-1=1. Предыдущий 1 становится 0.
10(0)(10)000
- 010111
---------
111
0-0=0
10(0)(10)000
- 010111
---------
0111
1-1=0
10(0)(10)000
- 010111
---------
00111
0-0=0
1-0=1
Результат: 10001112.
Проверка: 10001112 = 64 + 4 + 2 + 1 = 7110. Это тоже неправильно.
Давайте переведем числа в десятичную систему:
Теперь переведем 6910 в двоичную систему:
Записываем остатки в обратном порядке: 10001012.
Ответ: 1000101