Hallo zusammen,
ich versuche durch das Thema Bit-Operatoren zu steigen und stehe vor folgendem Problem:
Ich habe eine Zahl, die ich mir in Binärdarstellung ausgeben lasse. Das sieht dann so aus:
01010111010110100000100111111010
Jetzt verschiebe ich diese Bits um 2 Stellen nach rechts:
$foo = ($bar >> 2)
in $foo steht jetzt:
00010101110101101000001001111110
Sieht für mich alles richtig aus.
Das gleiche mache ich jetzt mit
10010010101111111111110111111010
Nach dem Verschieben der Bits erhalte ich aber:
11100100101011111111111101111110
Das sieht für mich nun wiederum nicht richtig aus. So wie ich es verstanden habe, müssten alle Bits um 2 Stellen nach rechts geschoben werden. Dann ist es ja eigentlich unmöglich, dass plötzlich Einsen auf der linken Seite erscheinen.
Kann mich da mal jemand aufklären?
Viele Grüße
Alex