Caligulaminus
Mitglied
Hex:
0xC0A80101; //192.168.1.1/24
und
0x0A002000; //10.0.32.0/24
ist binär
11000000 10101000 00000001 00000001
und
00001010 00000000 00100000 00000000
(Leerzeichen nur zur Veranschaulichung)
Vorhin hast Du
11000000 10101000 00000001 00000001
mit der Maske 0xff000000 verundet. Die sieht so aus:
11111111 00000000 00000000 00000000
Also
11000000 10101000 00000001 00000001
&
11111111 00000000 00000000 00000000
==
11000000 00000000 00000000 00000000
Und das hast Du um suffix (also 24) nach rechts geshiftet:
11000000 00000000 00000000 00000000 >> 24
==
00000000 00000000 00000000 11000000 == 0x000000C0 == 192
Dasselbe Ergebnis wäre hier übrigens auch ohne Maskierung entstanden:
11000000 10101000 00000001 00000001 >> 24
ist auch
00000000 00000000 00000000 11000000
Du hast also das oberste Byte an die unterste Stelle geshiftet.
0xC0A80101; //192.168.1.1/24
und
0x0A002000; //10.0.32.0/24
ist binär
11000000 10101000 00000001 00000001
und
00001010 00000000 00100000 00000000
(Leerzeichen nur zur Veranschaulichung)
Vorhin hast Du
11000000 10101000 00000001 00000001
mit der Maske 0xff000000 verundet. Die sieht so aus:
11111111 00000000 00000000 00000000
Also
11000000 10101000 00000001 00000001
&
11111111 00000000 00000000 00000000
==
11000000 00000000 00000000 00000000
Und das hast Du um suffix (also 24) nach rechts geshiftet:
11000000 00000000 00000000 00000000 >> 24
==
00000000 00000000 00000000 11000000 == 0x000000C0 == 192
Dasselbe Ergebnis wäre hier übrigens auch ohne Maskierung entstanden:
11000000 10101000 00000001 00000001 >> 24
ist auch
00000000 00000000 00000000 11000000
Du hast also das oberste Byte an die unterste Stelle geshiftet.