Форум » Адресация в Интернете » В11 2012 » Ответить

В11 2012

незнакомка: Здравствуйте! Предложите решение задачи: Если маска подсети 255.255.255.224 и IP-адрес компьютера в сети 162.198.0.157, то порядковый номер компьютера в сети равен...

Ответов - 5

Zoo: Переводим в двоичную систему: 224 = 11100000 - 5 последних бит - нули 157 = 10011101 - берем последние 5 бит Переводим это число в десятичную 11101 = 29 ответ 29

незнакомка: Zoo, спасибо за решение. В продолжение к этой задаче хочу спросить если бы было дано число 225 = 11100001 и 157 = 10011101, то надо было сложить или умножить 5 последних бит и полученное число перевести в 10 сс?

Zoo: Не может быть дано 225! В маске ВСЕГДА впереди единицы, а в конце нули. Считайте, сколько их (нулей) и отсчитывайте такое же количество бит в ай-пи адресе, а потом переводите в 10-ю.


незнакомка: Огромное спасибо за консультацию

kmr: Как я понимаю и может быть так будет понятнее: Сначала находим адрес сети (это будет нулевой номер компьютера) и от него, добавляя 1 к битовому представлению получим порядковые номера и адреса всех компьютеров. Итак адрес сети 162.198.0.128. Следующий адрес 1-го компьютера 162.198.0.129 2-го компьютера 162.198.0.130 и т.д. n-го компьютера 162.198.0.157 Чтобы определить порядковый номер n - вычтем из 157-128=29 Ответ: 29 Если нужно определить по маске 255.255.224.0, то для компьютера 162.198.130.10 тоже получаем адрес сети с помощью поразрядной конъюнкции: 162.198.128.0. И вычитаем теперь уже последние и предпоследние числа: 10-0=10, 130-128=2. Получим число 2.10. Переведем их в двоичное представление и запишем без учета точки все цифры подряд:10 00001010. Теперь просто переведем это число в десятичную систему счисления. Для этого удобнее использовать разбиение на 8 битов, т.е. как в 16-тиричной системе делим на 4 бита. Получим формулу 2*256+10=532. Точно также для маски 255.128.0.0 и адреса компьютера 192.130.10.5. Адрес сети 192.128.0.0. Вычитаем числа: 130-128=2, 10-0=10, 5-0=5. Тогда получим 2.10.5. Запишем в двоичной системе без точек и преобразуем в десятичное число: 10 00001010 00000101 2*256*256+10*256+5=131343.



полная версия страницы