Тип 13 № 2236 
Организация компьютерных сетей. Адресация. Подсчет количества адресов в сети
i
В терминологии сетей TCP/IP маской подсети называется 32-разрядное двоичное число, определяющее, какие именно разряды IP-адреса компьютера являются общими для всей подсети, — в этих разрядах маски стоит 1. Обычно маски записываются в виде четверки десятичных чисел — по тем же правилам, что и IP-адреса. Для некоторой подсети используется маска 255.255.254.0. Сколько различных адресов компьютеров теоретически допускает эта маска, если два адреса (адрес сети и широковещательный) не используют?
Решение. 1. Поскольку первые два октета (октет — число маски, содержит 8 бит) оба равны 255, то в двоичном виде они записываются как 16 единиц, а значит, первые два октета определяют адрес сети.
2. Запишем число 254 в двоичном виде: 
В конце этого числа стоит 1 ноль, еще 8 нолей мы получаем из последнего октета маски. Итого у нас есть 9 двоичных разрядов для того, чтобы записать адрес компьютера.
3.
но, так как два адреса не используются, получаем 
Ответ: 510.
Приведём решение Данила Шарлова на языке Python.
from ipaddress import ip_network
from random import randint
ip = f'{randint(0,255)}.{randint(0,255)}.{randint(0,255)}.{randint(0,255)}'
mask = '255.255.254.0'
net = ip_network(f'{ip}/{mask}',0)
print(net.num_addresses-2)
Приведём другое решение на языке Python.
print(2 ** (bin(255)[2:]+bin(255)[2:]+bin(254)[2:]+('0' * (8- len(bin(0)[2:]))+bin(0)[2:])).count('0') - 2)
Ответ: 510