phpbar.de logo

Mailinglisten-Archive

[php] Bit-Rotation

[php] Bit-Rotation

Egon Schmid php_(at)_phpcenter.de
Sat, 20 Apr 2002 23:13:10 +0200


From: "Norbert Pfeiffer" <norbert_(at)_itbw.de>

> gibt es eine Funktion, die Bits in einem Byte rotieren lassen ?
> Mit den Bit-Operatoren kann man Bits nur verschieben, laut Manual
> http://www.php.net/manual/de/language.operators.bitwise.php
> auch nur in *eine* Richtung - na-ja (copy/paste-Error) ... ;-)
>
> Ich moechte, dass die Bits, die dabei auf einer Seite
'rausfallen',
> auf der anderen Seite wieder einfliessen, also ringfoermig
wandern.
>
> Beim Experimentieren ist mir dann auch noch aufgefallen, dass
> decbin(); eine Zahl zurueckliefert, also die fuehrenden Nullen
> wegfallen. Das halte ich fuer eine kurzsichtige Loesung ... :-(
>
> Wenn sich schon mal jemand damit beschaeftigt hat, waere es nett,
> so er sich meldet, auch als PM - mir egal ... ;-)

Probiers mal mit www.php.net/decbin und www.php.net/bindec. Bevor Du
die Bits wieder in eine Dezimalzahl wandeln willst, benutze
www.php.net/substr. Mit ein paar Schleifchen kannst Du dann
hoffentlich das Gewünschte erreichen. Dazu muss man doch nur die
String-Arrays neu zusammenstellen. Habs zwar selber noch nie
ausprobiert, deshalb ohne Gewehr.

-Egon

PS: Das zweite "links", im deutschsprachigem Manual zu den bitwise
Operatoren, sollte eigentlich "rechts" heißen. Ich hoffe der
Übersetzer korrigiert dies alsbald und bringt es auf den neuesten
Stand.


php::bar PHP Wiki   -   Listenarchive