Арифметика

Двоичная система

Философ, который изобрёл язык компьютеров

Немецкий философ и математик **Лейбниц** описал двоичную систему в статье «Explication de l'Arithmétique Binaire». Он увидел в ней глубокий философский смысл: всё можно создать из **ничего (0)** и **единицы (1)** - как Бог создал мир.

Бог выбрал самое совершенное - создать всё из ничего и единицы.

Лейбниц мечтал о «вычислительной машине». Через 250 лет его двоичная система стала основой всех компьютеров. Каждый транзистор в процессоре - это реализация идеи Лейбница: 0 или 1, выключено или включено.

Каждое фото, видео, сообщение в вашем телефоне - это последовательность нулей и единиц. Триллионы бит хранятся и обрабатываются каждую секунду. Двоичная система - фундамент цифрового мира, и понять её - значит понять, как работают компьютеры.

  • **Компьютеры:** вся память и процессоры работают в двоичной системе
  • **Сети:** IP-адреса, маски подсетей
  • **Криптография:** шифрование данных на уровне бит

Позиционные системы счисления

Мы пишем числа в **десятичной системе**: каждая позиция - это степень 10. Но 10 - не единственный выбор. Компьютеры используют двоичную систему (основание 2).

**Позиционная система счисления:** Значение цифры зависит от её позиции (места). 347₁₀ = 3×10² + 4×10¹ + 7×10⁰ = 300 + 40 + 7 Основание системы - сколько разных цифр используется.

Позиционные системы - гениальное изобретение. Римские числа (I, V, X, L, C...) не позиционные, и арифметика с ними очень сложна.

Что означает «основание системы счисления»?

Двоичная система

В двоичной системе только две цифры: 0 и 1. Каждая позиция - степень двойки: 1, 2, 4, 8, 16, 32...

**Терминология:** • **Бит** (bit) - одна двоичная цифра (0 или 1) • **Байт** (byte) - 8 бит (от 00000000 до 11111111) • 1 байт хранит числа от 0 до 255 (2⁸ - 1)

Двоичные числа длиннее десятичных (1000₁₀ = 1111101000₂), но для электроники это не проблема - транзисторы работают очень быстро.

Чему равно 1101₂ в десятичной системе?

Перевод между системами

Как перевести число из десятичной в двоичную и обратно? Два простых алгоритма.

**Быстрый способ:** Запомните степени двойки: 1, 2, 4, 8, 16, 32, 64, 128, 256... Найдите наибольшую степень ≤ числа, вычтите, повторите. 42 = 32 + 10 = 32 + 8 + 2 = 101010₂

Программисты часто переводят в уме небольшие числа. С практикой это становится автоматическим.

Переведите 25₁₀ в двоичную систему:

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

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

**Почему сдвиги важны:** В компьютере сдвиг бит - одна из самых быстрых операций. Умножение на 2 = сдвиг влево Деление на 2 = сдвиг вправо Это используется в оптимизации программ.

Процессор компьютера выполняет миллиарды двоичных операций в секунду. Вся сложность компьютеров построена на этих простых правилах.

В двоичной системе 1 + 1 = 2

В двоичной системе 1 + 1 = 10 (ноль и перенос единицы)

В двоичной системе нет цифры «2» - только 0 и 1. Когда сумма превышает 1, происходит перенос в следующий разряд: 1 + 1 = 10₂ (что равно 2₁₀). Это как в десятичной: 9 + 1 = 10 (ноль и перенос).

Чему равно 101₂ + 111₂?

Ключевые идеи

  • Двоичная система использует только 0 и 1
  • Позиции: 1, 2, 4, 8, 16, 32... (степени 2)
  • Перевод: деление на 2 с записью остатков
  • Сдвиг влево/вправо = умножение/деление на 2

Связанные темы

Двоичная система - основа информатики:

  • Степени — Позиции = степени 2
  • Другие системы счисления — 8-ричная, 16-ричная
  • Логические операции — AND, OR, XOR над битами

Вопросы для размышления

  • Почему компьютеры используют именно двоичную, а не десятичную систему?
  • Сколько разных чисел можно записать 8 битами (1 байт)?
  • Как связаны двоичные сдвиги и умножение на степени двойки?

Связанные уроки

  • alg-01-big-o
Двоичная система

0

1

Войти