В терминологии сетей TCP/IP, маска сети ⸺ это двоичное число, которое определяет, какая часть IP-адреса относится к адресу сети, а какая — к адресу узла в этой сети. При применении поразрядной конъюнкции к IP-адресу узла и маске сети, получается адрес сети.Для решения задачи, нам дан IP-адрес сети 139.75.100.0 и маска сети 255.255.252.0. Нам нужно определить, сколько IP-адресов в этой сети имеют число Мерсенна в последнем (правом) байте двоичной записи.Для начала, переведем IP-адрес и маску сети в двоичную систему⁚
IP-адрес сети⁚ 10001011.01001011.01100100.00000000
Маска сети⁚ 11111111.11111111.11111100.00000000
Теперь сравним двоичную запись последнего байта IP-адреса с числом Мерсенна. Числа Мерсенна имеют вид 2^n — 1, где n ⸺ натуральное число. В двоичной записи чисел Мерсенна, все биты равны 1. Поэтому нам нужно найти IP-адреса, у которых все биты последнего байта равны 1. В данном случае, последний байт IP-адреса сети равен 00000000 в двоичной записи; Нам нужно определить, сколько IP-адресов имеют такой же последний байт, где все биты равны 1. В двоичной системе, число Мерсенна с n битами будет иметь значение 2^n ⸺ 1. Значит, нам нужно определить, сколько IP-адресов имеют n битов в последнем байте, где n является количеством битов в числе Мерсенна. У нас есть маска сети 11111100 в двоичной записи. Это означает, что последние 6 битов в последнем байте IP-адреса сети можно использовать для адресации узлов в этой сети.
В таблице истинности поразрядной конъюнкции (AND) для двух битов, 1 n 1 1, а остальные комбинации равны 0. Последняя комбинация с двоичными значениями 11111100 и 00000011 будет равна 00000000. Таким образом, все IP-адреса в этой сети, у которых последний (правый) байт равен числу Мерсенна, будут иметь значение 00000011 в двоичной записи последнего байта. При решении данной задачи, мы можем использовать только те адреса, которые вписаны в слева-направо биты 1 в маске подсети, для адресации узлов. В нашем случае, у нас есть 6 битов адресации узлов (последний байт IP-адреса). Значит, мы можем использовать только 2^6 — 2 64, 2 62 IP-адреса для адресации узлов в этой сети. Однако, для ответа на вопрос задачи, нам интересны только те IP-адреса, у которых последний байт равен 00000011 в двоичной записи.
Таким образом, в данной сети будет 2^6 ⸺ 2 62 IP-адреса, у которых в последнем (правом) байте двоичной записи IP-адреса записано число Мерсенна.