Двоичная система в вычислительной технике

Как компьютеры мыслят единицами и нулями

Понять двоичную систему

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

Биты и байты

Бит

  • Наименьшая единица данных
  • Один двоичный разряд: 0 или 1
  • Сокращение от «binary digit» (двоичная цифра)
  • Может представлять два состояния (да/нет, вкл./выкл., истина/ложь)

Байт

  • Группа из 8 бит
  • Может представлять 2⁸ = 256 различных значений (0–255)
  • Стандартная единица для хранения символов
  • Основа для более крупных единиц (КБ, МБ, ГБ)

Более крупные единицы

ЕдиницаРазмерЗначения
Байт8 бит256
Слово (16-бит)2 байта65 536
Двойное слово (32-бит)4 байта~4,3 млрд
Четверное слово (64-бит)8 байт~18,4 квинтиллиона

Как представляются данные

Текст (символы)

  • ASCII: 7 бит, 128 символов
  • Расширенный ASCII: 8 бит, 256 символов
  • Unicode (UTF-8): переменная длина, миллионы символов

Пример: «A» = 01000001 (65 в десятичной системе)

Числа

  • Целые числа: прямое двоичное представление
  • Отрицательные числа: дополнительный код
  • Дробные числа: формат с плавающей точкой (IEEE 754)

Изображения

  • Пиксели представляются как числа
  • RGB: 3 байта на пиксель (по 8 бит для красного, зелёного и синего)
  • Изображение 1920×1080 ≈ 6,2 млн байт без сжатия

Аудио

  • Звуковые волны дискретизируются как числа
  • Качество CD: 16-битные сэмплы, 44 100 раз в секунду

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

Сложение

Аналогично десятичному, но перенос при 2:

  • 0 + 0 = 0
  • 0 + 1 = 1
  • 1 + 0 = 1
  • 1 + 1 = 10 (0, перенос 1)
  • 1 + 1 + 1 = 11 (1, перенос 1)

Пример: 1011 + 1101

  1011
+ 1101
------
 11000

= 11 + 13 = 24 ✓

Логические вентили

Аппаратная реализация двоичных операций через логические вентили:

Основные вентили

ВентильФункцияТаблица истинности
ANDОба входа должны быть 11 AND 1 = 1
ORХотя бы один вход равен 11 OR 0 = 1
NOTИнвертирует входNOT 1 = 0
XORРовно один вход равен 11 XOR 1 = 0
NANDNOT AND1 NAND 1 = 0

Сложные операции (сложение, сравнение) строятся из комбинаций этих простых вентилей.

Числа со знаком: дополнительный код

Как компьютеры представляют отрицательные числа:

Метод

  1. Инвертировать все биты
  2. Прибавить 1

Пример: -5 в 8-битном формате

  • 5 = 00000101
  • Инверсия: 11111010
  • Прибавить 1: 11111011
  • -5 = 11111011

Почему дополнительный код?

  • Сложение работает естественным образом (без особых случаев)
  • Единственное представление для нуля
  • Легко реализуется аппаратно

Побитовые операции в программировании

Языки программирования предоставляют операторы для работы с битами:

Основные операции

  • AND (&): маскирование определённых бит
  • OR (|): установка определённых бит
  • XOR (^): переключение бит, шифрование
  • NOT (~): инверсия всех бит
  • Сдвиг влево (<<): умножение на 2ⁿ
  • Сдвиг вправо (>>): деление на 2ⁿ

Пример: проверка чётности числа

n & 1 == 0 означает, что n чётное

(Последний бит определяет чётность/нечётность)

Двоичная система в современных вычислениях

Адреса памяти

  • 32-бит: может адресовать 2³² = 4 ГБ
  • 64-бит: может адресовать 2⁶⁴ = 16 эксабайт

Сетевые адреса

  • IPv4: 32 бита (например, 192.168.1.1)
  • IPv6: 128 бит

Размеры файлов

  • Все файлы — это последовательности байтов
  • Тип файла определяется его содержимым/структурой

Шифрование

  • AES использует ключи длиной 128, 192 или 256 бит
  • SHA-256 генерирует 256-битные хеши

Заключение

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

Похожие статьи

Двоичная система в вычислительной технике: как компьютеры используют единицы и нули | YounitConverter