В протоколе IPv4-адреса представлены 32-битными числами. Однако для упрощения использования двоичные схемы, представляющие IPv4-адреса, выражаются десятичными представлениями с разделительными точками. Сначала каждый байт (8 бит) 32-битной комбинации (октета) отделяется точкой. Он называется октетом потому, что каждое десятичное число представляет один байт или 8 бит.

Двоичный адрес:

11000000 10101000 00001010 00001010

выражается в виде разделённых точками десятичных чисел:

192.168.10.10

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

Но как определяются их фактические десятичные эквиваленты?

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

Корнем для двоичной системы исчисления является 2. Таким образом, каждое расположение представляет значение в степени 2. В 8-битных двоичных числах расположения представляют следующие суммы:

2^7 2^6 2^5 2^4 2^3 2^2 2^1 2^0

128 64 32 16 8 4 2 1

Система с основанием 2 располагает только двумя цифрами: 0 и 1.

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

Рисунок 2 демонстрирует представление десятичного числа 192 в двоичном формате. Единица (1) в определённой позиции означает, что мы прибавляем это значение к общей сумме. Ноль (0) означает, что мы не добавляем это значение. Двоичное число 11000000 имеет 1 в позиции 2^7 (десятичное значение 128) и 1 в позиции 2^6 (десятичное значение 64). Оставшиеся биты — это нули, поэтому не нужно добавлять соответствующие десятичные значения. При сложении 128 + 64 получаем сумму 192, десятичный эквивалент которой 11000000.

Рассмотрим другие два примера.

Пример 1. Октет, содержащий все единицы: 11111111

Единица в каждой позиции означает, что мы прибавляем значение к этой позиции до общей суммы. Если в сумме все единицы, то значения каждой позиции включены в общую сумму; таким образом, значение всех единиц равняется 255.

128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255

Пример 2. Октет, содержащий все нули: 00000000

Ноль в каждой позиции указывает на то, что значение для данной позиции не включено в сумму. Если в каждой позиции стоит ноль, то вся сумма равняется 0.

0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 = 0

Разные комбинации единиц и нулей создают различные десятичные значения.