Список предметов
Двоичная система счисления
1 / 16

Двоичная система счисления  - это позиционная система записи чисел с основанием два.

В повседневной жизни мы привыкли пользоваться десятичной системой записи чисел с основанием 10. То есть для записи чисел у нас есть десять символов от 0 до 9, а место каждого символа (позиция) указывает его вес - единицы, десятки, сотни и т.д.

В двоичной системе счисления все устроено аналогичным образом, только для записи чисел у нас всего два символа - 0 и 1.
Из-за того, что для записи числа у нас только два символа (0 и 1), она нашла широкое применение в электронных устройствах и вычислительной технике. Несмотря на многочисленные попытки использования для вычислений аналоговых устройств, системы с троичной логикой (троичная система счисления с символами 0, 1 и 2), системы с двоичной логикой в настоящее время занимают доминирующее положение. Впрочем, с приходом квантовых вычислений, ситуация, скорее всего, изменится.

Как устроена запись чисел в двоичной системе

По аналогии с привычной десятичной системой, при переполнении разряда, добавляется следующий, который заполняется единицей.
В десятичной системе максимальное значение в одном разряде - число 9. Если нам нужно добавить единицу - то текущий разряд обнуляется, а в соседнем разряде появляется единица:
9
добавляем 1, получаем
10
(старший разряд стол единицей, младший - обнулился)

Теперь "посчитаем до десяти" в двоичной системе.

0. В двоичной системе так и будет - 0.

1. В двоичной системе так и будет - 1.

2. Символа 2 в двоичной системе нет. Поэтому младший разряд сбрасывается, а старший добавляется как 1. Получаем 10.

3. Добавляем единицу. Поскольку у нас было 10, младший разряд может быть увеличен на 1, получаем - 11.

4. Младший разряд снова достиг максимального значения, поэтому мы должны его сбросить, но следующий разряд тоже достиг максимального значения (1), его тоже сбрасываем и добавляем новый разряд. Получаем - 100.

5. Добавляем единицу в младший регистр. У нас было записано число 4 как 100, добавляем 1 в младший разряд и получаем 101.

6. Добавляем единицу в младший разряд, но он достиг максимального значения, сбрасываем его и добавляем единицу в следующий. Получаем 110.

7. Добавляем единицу в младший регистр. Получаем - 111.

8. Пытаемся добавить единицу к двоичному числу 111 и видим, что нам нужно последовательно сбросить уже целых три разряда и добавить еще один разряд. Получаем 1000.

9. Добавляем единицу к двоичному числу 1000, получаем - 1001.

10. Добавляем единицу к младшему разряду, но он достиг максимального значения, сбрасываем его и добавляем единицу к следующему. Получаем 1010.

Подведем итоги:

В десятичной
системе

В двоичной
системе
 

 0

0

1

 1

2

10

 

11

100

101

110

111

1000

1001

10 

 1010


Как видно из указанного выше, принцип записи чисел в двоичной системе точно такой же, просто используется меньшее количество символов в одном разряде.

Как различают числа, записанные в двоичной и десятичной системах

Для того, чтобы не перепутать число 100, записанное в десятичной системе с числом 100 в двоичной (которое эквивалентно 4 в десятичной) используют дополнительные символы в конце или в начале числа.

Например:
10010 и 1002.
В данном случае в виде нижнего индекса указывается основание системы счисления.

В литературе, посвященной программированию чаще всего используют обозначения чисел, применяемые в семействе языков программирования С (С. С#, C++). В этих языках принято обозначать двоичные числа префиксом 0b.
Тогда 100 в десятичной системе будет записано без изменений, а 100 в двоичной системе будет записано как 0b100.

Сложение и вычитание двоичных чисел

Сложение и вычитание двоичных чисел можно делать абсолютно аналогично принципам сложения и вычитания "в столбик" десятичных чисел.

Проведем сложение двух чисел 7 и 9.
В двоичной системе счисления
710 = 1112
910 = 10012

Тогда
      1
 +   1 0 0
   1  0  0  0

1610 = 100002 .

Как видим, сложение 1 и 1 в младшем разряде приведет к достижению максимального значения, то есть он должен быть сброшен ( в ноль ), а единица должна быть прибавлена к следующему разряду. Но там при сложении уже имеется единица и добавление единицы приведет нас к аналогичным действиям - снова сбрасываем разряд в ноль, переносим единицу в следующий и так далее.

Преобразование чисел из двоичной системы в десятичную

Для преобразования чисел, записанных в двоичной системе, в десятичную, нам потребуется таблица степеней числа 2.
Запишем степени двойки в виде следующей строки:
 256  128  64  32  16  8  4  2

Теперь любое двоичное число можно будет пересчитать в десятичное следующим образом:


+256 +128 +64 +32 +16 +8 +4 +2 +1 
 Результат пересчета
     1  64+8+4+1 = 77

То есть 10011012 = 7710.


0  


Описание курса | Хранение и кодирование информации