Gibt es in Perl einen bitweisen Operator, der wie >>
funktioniert, aber das höchstwertige Bit entfernt? So ähnlich wie der >>
Operator ist etwas wie die shift()
Funktion, ich bin auf der Suche nach einem Bit-Operator, der wie pop()
ist.Bitoperationsäquivalent der Popfunktion in PERL (MSB entfernen)
110110
zurückkehren würde 10110
101
zurückkehren würde 01
Letztendlich, ob eine Zahl in binärer Form zu sehen, ich versuche Palindrom ist (dh 11011, 111 oder 1010101), so idealerweise der Betreiber würde habe eine Möglichkeit, das entfernte Bit zurückzugeben. Es ist in Ordnung, wenn der Operator dies nicht tut, wie ich es mathematisch tun könnte, aber im Interesse von sauberem Code wäre es großartig, wenn es das MSB automatisch zurückgibt. Für das LSB, ich
$LSB=$mynum-2*($mynum>>1);
$mynum>>=1;
Weißt du, ich habe viel zu lange damit verbracht, nach etwas zu suchen, um es nicht gefunden zu haben. Was bedeutet WORDSIZE in diesem Beispiel? –
@Ranting_Raven, ich habe es gepostet, falls du es verpasst hast. WORDSIZE ist die Größe eines Wortes auf Ihrer Maschine (ich nehme an) –