Ответ:

Чтобы вычесть двоичные числа, можно использовать вычитание столбиком, занимая разряды при необходимости.

110100₂

- 11111₂

Начинаем справа:

  1. 0 - 1: нужно занять. Занимаем у соседнего 0, но он тоже 0. Занимаем у следующей 1.
  2. 1 становится 0, первая 0 становится 2 (0+2).
  3. 2 - 1 = 1.
  4. Теперь у нас 0 (было 0, но заняли 1), нужно занять у следующего 0.
  5. 0 и 0, занимаем у 1.
  6. 1 становится 0, 0 становится 2.
  7. 2 - 1 = 1.
  8. Теперь у нас 1 (было 0, но заняли 1), 1 - 1 = 0.
  9. Далее у нас 0 (было 0, но заняли 1), 0 - 1: нужно занять.
  10. Занимаем у последнего 1, он становится 0.
  11. 0 становится 2.
  12. 2 - 1 = 1.
  13. Последняя цифра 0 (было 1, но заняли 1), 0 - 0 = 0.

Результат: 000111₂, что равно 111₂.

Альтернативный способ: перевод в десятичную систему.

110100₂ = 1*32 + 1*16 + 0*8 + 1*4 + 0*2 + 0*1 = 32 + 16 + 4 = 5210

11111₂ = 1*16 + 1*8 + 1*4 + 1*2 + 1*1 = 16 + 8 + 4 + 2 + 1 = 3110

52 - 31 = 2110

Переводим 2110 в двоичную систему:

  1. 21 : 2 = 10 (ост. 1)
  2. 10 : 2 = 5 (ост. 0)
  3. 5 : 2 = 2 (ост. 1)
  4. 2 : 2 = 1 (ост. 0)
  5. 1 : 2 = 0 (ост. 1)

Получаем 10101₂.

Проверка первого способа: 110100 - 11111. Можно представить 110100 как 101111 + 1. Тогда 110100 - 11111 = 101111 + 1 - 11111. Это тоже не очень удобно. Давайте сделаем более привычное вычитание столбиком.

110100
- 11111
----------
000101

Давайте проверим вычитание столбиком еще раз:

1 1 0 1 0 0
- 0 1 1 1 1 1
----------------
0 0 0 1 0 1

0 - 1 (занимаем у 0, который тоже 0, занимаем у 1, которая становится 0, первая 0 становится 2, вторая 0 становится 1, последняя 0 становится 2)

0 10 10 10 10

1 1 0 1 0 0

- 0 1 1 1 1 1

------------------

0 0 0 1 0 1

Получается 101₂. Это 5 в десятичной. Но мы знаем, что ответ 21.

Вернемся к десятичному переводу, он более надежен.

110100₂ = 5210

11111₂ = 3110

52 - 31 = 2110

2110 = 10101₂

Ответ: 10101