, таким образом 255 представляет собой 8 единиц в двоичной записи. , соответственно 192 представляет собой 2 единицы и нули в двоичной записи. Тогда целая маска выглядит как . В маске есть только 6 нулей, которые соответствуют внутреннему адресу компьютера. 6 битами можно закодировать компьютера, таким образом эта маска допускает 64 адреса. Но так как 2 адреса заняты (адресом сети и широковещательным), то для подсети остается только 62 адреса.
Поясню, как это скорее всего работает: Пусть A = 255.255.255.192. Пусть какой-то пакет информации поступил на адрес B, первые 26 бит которого соответствуют адресу сети C. Это можно проверить результатом операции A ^ B = C ^ A. Далее этот пакет следует перенаправить на какой-то компьютер подсети. Его адрес узнаем операцией (not A) ^ B.
Но это лишь то, как я себе представил, могу ошибаться.
Я исправил ошибки, теперь она работает корректно, но если тебе нужно обязательно использовать if..else, то оставять коммент, я перепишу
#include <iostream>
using namespace std;
int main()
{
setlocale(0, "Rus");
int osenka; ;
cout << "Введите произвольную цифру от 2 до 5: ",
cin >> osenka;
if (osenka == 5) // Если введенная цифра равна 5.
cout << "Вы получили оценку «5» \n";
if (osenka == 4) //Если введенная цифра равна 4
cout << "Вы получили оценку «4». \n";
if (osenka == 3) //Если введенная цифра равна 3
cout << "Вы получили оценку «3». \n";
if (osenka == 2)
cout << "Вы получили оценку «2».\n";
return 0;
}
, соответственно 192 представляет собой 2 единицы и нули в двоичной записи.
Тогда целая маска выглядит как
.
В маске есть только 6 нулей, которые соответствуют внутреннему адресу компьютера. 6 битами можно закодировать компьютера, таким образом эта маска допускает 64 адреса. Но так как 2 адреса заняты (адресом сети и широковещательным), то для подсети остается только 62 адреса.
Поясню, как это скорее всего работает:
Пусть A = 255.255.255.192.
Пусть какой-то пакет информации поступил на адрес B, первые 26 бит которого соответствуют адресу сети C. Это можно проверить результатом операции
A ^ B = C ^ A.
Далее этот пакет следует перенаправить на какой-то компьютер подсети. Его адрес узнаем операцией (not A) ^ B.
Но это лишь то, как я себе представил, могу ошибаться.