No siema.
Możecie napisać, jak zamienić adres ip, na system binarny? Tak samo z maskami podsieci.
Bo mam zadanko żeby określić adres sieci, dobrać odpowiednią klasę adresów ip dla instytucji(różna ilość komputerów i hostów).
Chyba, że nie tak myślę. Skoro Adres sieci jest adresem logicznym AND bitów hosta i jego maski, to należy zamienić adres IP i maskę podsieci na system binarny, później wymnożyć przez siebie te 2 wartości(0 i 1) i później wynik iloczynu znowu zamienić na system dziesiątkowy(wtedy już będę w stanie określić jaki jest adres sieci).
Czy gdzieś źle myślę?
W wielkim skrócie dla tl;dr
Jak zamienić adres np:
Adres IP: 5.108.10.23
Maska podsieci: 255.0.0.0
Na system binarny?
5/2 =2 reszty: 1
2/2 =1 reszty: 0
1/2 =0 reszty: 1
czyli 5 to w systemie binarnym to 101(liczbę odczytuje się od "dołu")
108/2 =54 reszty 0
54/2 = 27 reszty 0
27/2 = 13 reszty 1
13/2 = 6 reszty 1
6/2 = 3 reszty 0
3/2 = 1 reszty 1
1/2 = 0 reszty 1
czyli liczba 108 w postaci binarnej to 1101100
10/2 = 5 reszty 0
5/2 = 2 reszty 1
2/2 = 1 reszty 0
1/2 = 0 reszty 1
czyli 10 w postaci binarnej to 1010
23/2 = 11 reszty 1
11/2 = 5 reszty 1
5/2 = 2 reszty 1
2/2 = 1 reszty 0
1/2 = 0 reszty 1
czyli 23 w binarnej to 10111
Cały adres IP będzie wyglądał tak:
00000101.01101100.00001010.00010111
Maska podsieci:
255 w postaci binarnej to nic innego jak 8 jedynek czyli:
255.0.0.0 =
11111111.00000000.00000000.00000000
żeby zdobyć adres sieci trzeba pomnożyć adres przez maskę czyli:
00000101.01101100.00001010.00010111 *
11111111.00000000.00000000.00000000 =
00000101.00000000.00000000.00000000
czyli adres sieci to :
5.0.0.0
adres IP jak i maska są 32-bitowe, składają się z 4 oktetów odzielonych kropkami
(patrząc od lewej każdy oktet 2^7 aż do 2^0) -> 128 64 32 16 8 4 2 1
w twoim przypadku IP:
00000101.01101100.00001010.00010111
szukasz największej potęgi cyfry 2 w każdym oktecie (mniejszej niż ta liczba), stawiasz tam jedynkę i tak aż wszystko się zsumuje: np pierwszy oktet 00000101 = 2^2+2^0
maske zamienić jest najłatwiej, bo zaczyna się od samych jedynek, a kończy na samych zerach, twoja maska jest 8bitowa, czyli standardowa dla adresu klasy "A"
11111111.00000000.00000000.00000000
łatwo widać, że ades sieci to 5.0.0.0/8
ale, przecież nie musisz robić zamiany na binarne żeby to stwierdzić!
5.108.10.23
255.0.0.0
widzisz, ze maska konczy sie na samych zerach, więc od 2 do 4 oktetu będzie wszędzie - 0
zaczyna się od 255 (128+64+32+16+8+4+2+1) wystaczy zapamiętać że 255 to same jedynki
i możesz w pamięci stwierdzić (na razie przynajmniej w tak prostym przypadku) że adres sieci to 5.0.0.0/8
No właśnie Ronn nie mogę tego stwierdzić w pamięci.... Wszystko musi być ładnie pięknie podane. Czyli dobrze myślałem, jeszcze nie jest ze mną tak źle ;)
Dzięki śluzu ;)