Forum: Object-Pascal / Delphi-Language
Delphi
by SirThornberry,
22. Okt 2009
dann stimmt meine Antwort - einfach das shiften weg lassen für die ersten 12.
Das ganze mal am Beispiel der 1 für MyINt
MyInt mit Wert 1 = 00000000000000000000000000000001
$00000FFF = 00000000000000000000111111111111
---------------------------------------------------
mit and = 00000000000000000000000000000001
Forum: Object-Pascal / Delphi-Language
Delphi
by SirThornberry,
22. Okt 2009
das war schon zum auslesen der 2ten 12.
Wenn man die ersten 12 haben will braucht man nicht zu shiften.
Durch das shiften werden die 1ten 12 nach rechts weg geschoben und die nächsten Bits rücken von links her nach.
Wobei es jetzt sein kann das ich was falsches erzähle je nachdem was du als die "ersten" 12 ansiehst.
Eine 1 sieht ja wie folgt aus:
00000000000000000000000000000001
ist...
Forum: Object-Pascal / Delphi-Language
Delphi
by SirThornberry,
22. Okt 2009
deutlicher wird es wenn man die führenden Nullen mit schreibt
(MyInt shr 12) and $00000FFF
$00000FFF = 00000000000000000000111111111111
Hier mal das ganze falls bei MyInt jedes zweite bit gesetzt ist:
MyInt = 10101010101010101010101010101010