Задание 13. Информатика. ЕГЭ. Шастин. 9.2.2025

Просмотры: 379
Изменено: 10 февраля 2025

(Д. Бахтиев) В терминологии сетей ТСРЛР маска сети — это двоичное число, меньшее \(2^{32}\); в маске сначала (в старших разрядах) стоят единицы, а затем с некоторого места нули. Маска определяет, какая часть IP-адреса узла сети относится к адресу сети, а какая — к адресу самого узла в этой сети. Обычно маска записывается по тем же правилам, что и IP-адрес — в виде четырёх байт, причём каждый байт записывается в виде десятичного числа. Адрес сети получается в результате применения поразрядной конъюнкции к заданному IP-адресу узла и маске.

Для узла с IP-адресом \(111.233.75.16\) адрес сети равен \(111.233.75.0.\) Чему равно наибольшее количество возможных адресов в этой сети?

Решение:

Python


ip = (111 << 24) + (233 << 16) + (75 << 8) + 16
net = (111 << 24) + (233 << 16) + (75 << 8)

for n in range(31, -1, -1):
    mask = ((2**32 - 1) << n) & (2**32 - 1)
    if ip & mask == net:
        print(2**n)
        break

Ответ: \(256\)