В терминологии сетей ТСР/ІР маской сети называют двоичное число, которое показывает, какая часть ІР-адреса узла сети относится к адресу сети, а какая - к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла и его маске.
Широковещательным адресом называется специализированный адрес, в котором на месте нулей в маске стоят единицы. Адрес сети и широковещательный адрес не могут быть использованы для адресации сетевых устройств.
Сеть задана ІР-адресом одного из входящих в неё узлов \(146.180.173.153\) и сетевой маской \(255.192.0.0.\) Найдите наибольший в данной сети ІР-адрес, который может быть назначен компьютеру. В ответе укажите найденный ІР-адрес без разделителей.
Например, если бы найденный адрес был равен \(111.22.3.44,\) то в ответе следовало бы записать: \(11122344.\)
Решение:
Python
ip = (146 << 24) + (180 << 16) + (173 << 8) + 153
mask = (255 << 24) + (192 << 16)
net = ip & mask
p = f'{mask:b}'.count('0')
ip = net + 2**p - 2
print(f'{((ip >> 24) & 255)}{((ip >> 16) & 255)}{((ip >> 8) & 255)}{(ip & 255)}')
Ответ: \(146191255254\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене