Что такое двоичная система счисления

Система записи — это шифр

Если у нас есть девять коров, мы можем записать их как 🐄🐄🐄🐄🐄🐄🐄🐄🐄  или как 9 × 🐄.

Почему 9 означает «девять»? И почему вообще есть такое слово? Почему такое количество мы называем этим словом? Вопрос философский, и короткий ответ — нам нужно одинаково называть числа, чтобы друг друга понимать. Слово «девять», цифра 9, а также остальные слова — это шифр, который мы выучили в школе, чтобы друг с другом общаться.

Допустим, к нашему стаду прибиваются еще 🐄🐄🐄. Теперь у нас 🐄🐄🐄🐄🐄🐄🐄🐄🐄🐄🐄🐄  — двенадцать коров, 12. Почему мы знаем, что 12 — это «двенадцать»? Потому что мы договорились так шифровать числа.

Нам очень легко расшифровывать записи типа 12, 1920, 100 500 и т. д. — мы к ним привыкли, мы учили это в школе. Но это шифр. 12 × 🐄  — это не то же самое, что 🐄🐄🐄🐄🐄🐄🐄🐄🐄🐄🐄🐄. Это некая абстракция, которой мы пользуемся, чтобы упростить себе счёт.

Видео

Таблица и алфавит

Алфавит двоичной системы счисления состоит всего из двух знаков: 0 и 1. Однако это нисколько не усложняет выполнение арифметических действий.

Кроме того, двоичная система является самой удобной для быстрого перевода в другие системы счисления.

Так, чтобы перевести двоичное число в десятичное, необходимо найти значение его развернутой формы. Например:

1001102 = 1 ∙ 25 + 0 ∙ 24 + 0 ∙ 23 + 1 ∙ 22 + 1 ∙ 22 + 0 ∙ 2 = 32 + 0 + 0 + 4 + 2 + 0 = 3810

Чтобы наоборот перевести число в двоичную из десятичной, необходимо выполнить его деление на 2 с остатком, а затем записать все остатки в обратном порядке, начиная с частного:

Делимое 38 19 9 4 2
Делитель 2 2 2 2 2
Частное 19 9 4 2 1
Остаток 1 1

3810 = 1001102

Для перевода в другие системы необходимо:

  • Перевести двоичный код в десятичный.
  • Выполнить деление десятичного числа на основание той системы, в которую требуется перевести.

Однако можно воспользоваться и более быстрым и удобным способом: разделить знаки двоичного числа на условные группы слева на право (для восьмеричной — по 3 знака; для шестнадцатеричной — по 4 знака), а затем воспользоваться таблицей перевода:

Двоичная Восьмеричная Шестнадцатеричная
001 1 1
010 2 2
011 3 3
100 4 4
101 5 5
110 6 6
111 7 7
1000 8
1001 9
1010 A
1011 B
1100 C
1101 D
1110 E
1111 F

Например:

110010012 = 11 001 001 = 011 001 001 = 3118

110010012 = 1100 1001 = С916

Система записи — это условность

Представим бредовую ситуацию: у нас не 10 пальцев, а 6. И в школе нас учили считать не десятками, а шестёрками. И вместо привычных цифр мы бы использовали знаки ØABCDE. Ø — это по-нашему ноль, A — 1, B — 2, E — 5.

Вот как выглядели бы привычные нам цифры в этой бредовой системе счисления:

0 — Ø 1 — A 2 — B 3 — C 4 — D 5 — E6 — AØ 7 — AA 8 — AB 9 — AC 10 — AD 11 — AE12 — BØ 13 — BA 14 — BB 15 — BC 16 — BD 17 — BE18 — CØ 19 — CA 20 — CB 21 — CC 22 — CD 23 — CE24 — DØ 25 — DA 26 — DB 27 — DC 28 — DD 29 — DE30 — EØ 31 — EA 32 — EB 33 — EC 34 — ED 35 — EE36 — AØØ 37 — AØA 38 — AØB 39 — AØC 40 — AØD 41 — AØE

В этой системе мы считаем степенями шестёрки. Число ABADØ можно было бы перевести в привычную нам десятичную запись вот так:

A × 64 = 1 × 1296 = 1296

B × 63 = 2 × 216 = 432

A × 62 = 1 × 36 = 36

D × 61 = 4 × 6 = 24

Ø × 6 = 0 × 1 = 0

1296 + 432 + 36 + 24 + 0 = 1788. В нашей десятичной системе это 1788, а у людей из параллельной вселенной это ABADØ, и это равноценно.

Выглядит бредово, но попробуйте вообразить, что у нас в сумме всего шесть пальцев. Каждый столбик — как раз шесть чисел. Очень легко считать в уме. Если бы нас с детства учили считать шестёрками, мы бы спокойно выучили этот способ и без проблем всё считали. А счёт десятками вызывал бы у нас искреннее недоумение: «Что за бред, считать числом AD? Гораздо удобнее считать от Ø до E!»

То, как мы шифруем и записываем числа, — это следствие многовековой традиции и физиологии. Вселенной, космосу, природе и стадам коров глубоко безразлично, что мы считаем степенями десятки. Природа не укладывается в эту нашу систему счёта.

Например, свет распространяется в вакууме со скоростью 299 792 458 метров в секунду. Ему плевать, что нам для ровного счёта хотелось бы, чтобы он летел со скоростью 300 тысяч километров в секунду. А ускорение свободного падения тела возле поверхности Земли — 9,81 м/с2. Так и хочется спросить: «Тело, а ты не могло бы иметь ускорение 10 м/с2?» — но телу плевать на наши системы счисления.

Практика

Без практики объяснить, как этим пользоваться – трудно. Поэтому рассмотрим пару примеров. Однако для начала вам необходимо скачать таблицу, где значения бинарного кода представляются в десятичной форме. Я взял первую попавшуюся таблицу с интернета. Выглядеть она будет примерно так:

Задача 1: Представить 7 в двоичном коде, а потом р

Задача 1: Представить 7 в двоичном коде, а потом расписать его с помощью формулы выше.

Для того чтобы это сделать надо:

  1. Последовательно делить семерку на 2, пока остаток от нее станет меньше либо равен единице. Используем принцип деления «столбиком».
  2. Записываем значение в двоичной форме по остаткам справа налево. Сверяем результат с таблицей
 Ответ: Сверяем результат с таблицей
  3. Сверяем результат с таблицей
  4. Записываем в виде степенного ряда 
n (номер крайней позиции)=2 так как

Как видно из примера здесь нет ничего сложного. Давайте разберем что-нибудь посложнее, да и найдем таблицу посерьезнее. Я взял вот такую:

Задача 2: отобразить 13 в двоичной системе счислен

Задача 2: отобразить 13 в двоичной системе счисления.

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

Получаем что 

Получаем что Смотрим что в таблице:

Смотрим что в таблице:

Далее я приведу несколько свойств, которые вы смож

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

Как считать

Как использовать двоичную систему для записи чисел? Так же как и десятичную. Самым простым примером можно считать кодовый замок, такой как на чемоданах. Каждый диск которого, вращается и может принимать значение от 0 до 9. Достаточно представить, что вместо десяти цифр есть только 2, ноль и единица.

Так как система позиционная, это будет выглядит та

Так как система позиционная, это будет выглядит так:

000000 — ноль

Сейчас здесь записано число «ноль». Чтобы получилась единица, нужно провернуть крайний правый диск один раз.

000001 — один

Начинается самое интересное, как будет выглядеть число «два»? Крутим правое колесико… И снова получаем 0, ведь других значений нет. Нужно поступить так же, как и в десятичной системе, перенести разряд влево. Только в десятичной, это происходит когда значение превышает 9, а в двоичной сразу после 1.

000010 — два

000011 — три

000100 — четыре

Двоичная система Десятичная система
1 1
10 2
11 3
100 4
101 5
110 6
111 7
1000 8
1001 9
1010 10

Сто в двоичной системе — это 1100100.

Очень интересно в бинарной системе выглядит таблица умножения:

1
1 1

Легко запомнить, неправда ли? 0*0=0, 0*1=0, 1*1=1… И все!

Все математические операции выполняются точно так же

2+2=4

10+10=100

Если сложит  в столбик то получается нагляднее

10

10

100

Складываем ноли, получаем 0, складываем две единицы, получаем ноль (2 раза провернули диск) и единичку переносим вправо.

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

Так же как с цифрами можно поступить с буквами. Латинская буква «a» будет выглядеть как 01001010 кириллическая «а» — 000011100010111000011001, и даже пробел — 00010100.

История создания

Ясно, что человечество пользовалось двоичным кодом очень давно. И сигнальные системы с дымом от костров и даже китайская Книга Перемен (700 лет до нашей эры) с ее гексаграммами известны очень давно. Но окончательно практический смысл бинарный код получил совсем недавно (если не считать азбуку Морзе).

Великий Лейбниц занимался двоичной системой в 17 веке, но применить бинарную систему счисления было особо негде. В том же Веке Паскаль создал свою счетную машину (суммирующую), использующую десятичную систему. Оказалось, что считать на таком «калькуляторе» не так уж и удобно.

Суммирующая машина Паскаля (десятичная)

Суммирующая машина Паскаля (десятичная)

И только в 40-х годах 20 веке, вместе с появлением первых электронный вычислительных машин двоичный код явил всю свою безусловную полезность и красоту. Именно как машинный язык. Записывать информацию в котором гораздо проще, чем привычными нам средствами, буквами и цифрами.

То же самое, в двоичном коде можно сделать проще

То же самое, в двоичном коде можно сделать проще

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

Теги