В современной сетевой инфраструктуре вы редко будете выполнять расчеты подсетей вручную, поскольку инструменты и калькуляторы автоматизируют этот процесс. Однако понимание ручного преобразования между десятичной и двоичной системами имеет решающее значение для собеседований по сетевым технологиям, сертификационных экзаменов и для более глубокого понимания принципов работы IP-адресации. Этот урок предлагает несколько простых подсказок, которые помогут вам освоить это.
Во-первых, очень полезно запомнить вычисления по основанию 2, поскольку они составляют основу двоичной математики.
- 2^1 = 2
- 2^2 = 4
- 2^3 = 8
- 2^4 = 16
- 2^5 = 32
- 2^6 = 64
- 2^7 = 128
- 2^8 = 256
Таблица преобразования двоичных чисел
Для простого преобразования чисел мы используем таблицу, которая представляет значение каждого бита в 8-битном октете IP-адреса.
1 1 1 1 1 1 1 1
128 64 32 16 8 4 2 1
Эта таблица — ваш основной инструмент. Каждое число соответствует позиции бита. Полная сумма, 128+64+32+16+8+4+2+1, равна 255, что является максимально возможным значением в октете.
Преобразование из десятичной в двоичную систему
Давайте преобразуем IP-адрес 192.168.23.43 в двоичный код. Мы рассмотрим первый октет, 192, чтобы продемонстрировать процесс. Мы используем значения из нашей таблицы: 128 64 32 16 8 4 2 1.
- Начните с числа
192. Можете ли вы вычесть из него 128? Да (192 - 128 = 64). Итак, первый бит равен 1. - Наше новое число —
64. Можете ли вы вычесть из него следующее значение, 64? Да (64 - 64 = 0). Второй бит равен 1. - Наш остаток теперь равен
0. Мы не можем вычесть 32, 16, 8, 4, 2 или 1. Следовательно, остальные биты — 0.
Двоичная форма числа 192 — это 11000000. Вы можете применить этот же метод вычитания к другим октетам.
Преобразование из двоичной в десятичную систему
Чтобы преобразовать из двоичной системы обратно в десятичную, вы просто складываете значения из таблицы, где в двоичном числе стоит 1. Давайте преобразуем 11000000 обратно в десятичное число.
Глядя на таблицу 128 64 32 16 8 4 2 1, первые два бита равны 1. Это означает, что мы складываем первые два значения:
128 + 64 = 192
Поскольку все остальные биты равны 0, мы не добавляем никаких других значений. Формула 128 + 64 + 0 + 0 + 0 + 0 + 0 + 0 дает нам 192. Все просто!