Арифметика в двоичной системе

Сложение, вычитание, умножение в двоичной системе. Переполнение разряда. Связь с работой процессора.

Арифметика в двоичной системе счисления

1. Двоичное сложение

Арифметические операции в двоичной системе выполняются по тем же правилам, что и в десятичной, но с учётом того, что основание равно 2.

Таблица двоичного сложения

0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 10  (0 пишем, 1 переносим в старший разряд)

Пример сложения:

  1101  (13₁₀)
+ 1011  (11₁₀)
------
 11000  (24₁₀)

Поразрядное выполнение:

2. Двоичное вычитание

Таблица двоичного вычитания

0 - 0 = 0
1 - 0 = 1
1 - 1 = 0
0 - 1 = 1  (с заёмом единицы из старшего разряда)

При вычитании 0 − 1 необходимо занять единицу из ближайшего старшего ненулевого разряда.

Пример вычитания:

  1100  (12₁₀)
- 0111  (7₁₀)
------
  0101  (5₁₀)

3. Переполнение разряда

При сложении двоичных чисел фиксированной разрядности может возникнуть переполнение — ситуация, когда результат не помещается в отведённое количество битов.

Пример переполнения в 8-битном представлении:

  11111111  (255₁₀, максимальное 8-битное)
+ 00000001  (1₁₀)
----------
 100000000  (256₁₀ — требуется 9 бит)

Старший бит (девятый) теряется, и в 8-битном регистре остаётся 00000000.

Переполнение обрабатывается флагом CF (Carry Flag) в регистре флагов процессора.

4. Двоичное умножение

Двоичное умножение проще десятичного, так как таблица умножения содержит всего 4 правила:

0 × 0 = 0
0 × 1 = 0
1 × 0 = 0
1 × 1 = 1

Умножение сводится к сдвигу множимого влево и сложению. Умножение на 2ⁿ выполняется сдвигом на n разрядов влево.

Пример: 1011₂ × 101₂

       1011
     ×  101
     ------
       1011  (умножение на 1)
      0000   (сдвиг на 1, умножение на 0)
   + 1011    (сдвиг на 2, умножение на 1)
   ---------
     110111

Результат: 1011₂ × 101₂ = 110111₂ (11₁₀ × 5₁₀ = 55₁₀).

5. Связь с процессором

Арифметико-логическое устройство (АЛУ) процессора выполняет все двоичные арифметические операции. Сложение — основная операция; вычитание реализуется через сложение с дополнительным кодом, умножение — через многократное сложение со сдвигом.

Примеры вопросов из тренажёра

  1. Q: Чему равно 1101₂ + 1011₂?

    A: верный ответ — 11000₂

    Объяснение: 1101(13) + 1011(11) = 11000(24). Поразрядно: 1+1=10(0,1 в уме), 0+1+1=10(0,1), 1+0+1=10(0,1), 1+1+1=11.

  2. Q: Чему равно 1₂ + 1₂ в двоичной системе?

    A: верный ответ — 10₂

    Объяснение: 1+1=2, но в двоичной системе нет цифры 2. Результат: 10₂ (0 пишем, 1 переносим в старший разряд).

  3. Q: Что такое переполнение разряда?

    A: верный ответ — Результат не помещается в отведённое количество битов

    Объяснение: Переполнение — ситуация, когда результат операции требует больше битов, чем отведено для его хранения.

  4. Q: Чему равно 1100₂ − 0011₂?

    A: верный ответ — 1001₂

    Объяснение: 1100(12) − 0011(3) = 1001(9). При вычитании 0−1 занимаем из старшего разряда.

  5. Q: Какая часть процессора выполняет арифметические операции?

    A: верный ответ — АЛУ (ALU)

    Объяснение: АЛУ — арифметико-логическое устройство, выполняет сложение, вычитание, умножение и логические операции.

Пройти тему «Арифметика в двоичной системе» в приложении