Пример
Сеть задана адресом 192.168.32.160 и маской 255.255.255.240. Определите, сколько в данной сети адресов с чётной суммой цифр.
Шаг 1. Сколько бит свободно
Маска 255.255.255.240: три байта единиц плюс 4 единицы в последнем байте. Всего 28 единиц, значит свободных бит 4, а адресов в сети 16.
Всё, что слева от черты, у всех 16 адресов одинаковое. Меняется только подсвеченный хвост.
Шаг 2. Единицы в адресе сети
Считаем единицы по байтам: 192 это 11000000 — две единицы, 168 это 10101000 — три, 32 это 00100000 — одна, 160 это 10100000 — две.
Итого 8, и все они сидят в номере сети: хвост у адреса сети нулевой.
Шаг 3. Переписать условие про хвост
У любого адреса этой сети сумма единиц равна 8 плюс единицы хвоста. Восемь — чётное, а чётное плюс чётное даёт чётное, чётное плюс нечётное — нечётное.
Значит вопрос свёлся к другому, гораздо более простому: сколько четырёхбитовых хвостов содержат чётное число единиц.
Шаг 4. Пересчитать хвосты
Хвостов всего 16, и их можно просто выписать, разложив по числу единиц.
Ноль единиц — один хвост, две единицы — C(4,2) = 6, четыре единицы — один. Итого 1 + 6 + 1 = 8.
Ровно половина сети, и это не случайность: при чётной добавке чётных и нечётных хвостов всегда поровну.
На самом деле ответ можно было найти легче, поделив на 2 общее число хостов. 16 хостов из них половина содержит чётное число единиц, другая половина - нечтное.