Heim > Artikel > Backend-Entwicklung > Grundlegende Bitoperationen in PHP
PHP-Bitoperationen
$a & $b und (bitweises UND)
$a | $b oder (bitweises ODER)
$a ^ $ b a >
Beispiel: 10 & 12 = 8
10 1010
12 1100
1000 8
$a |. $b bitweise Oder setzen Sie eines von $a oder $b auf 1;
Beispiel: 10 | 🎜>
$a ^ $b bitweises XORBeispiel: 10 ^ 1210 101012 11000110 6
~a Bitweise Notation setzt die 0 in $a auf 1 und die 1 auf 0Beispiel: ~10 =10 1010 1110101 -11 $a << $b Bewegen Sie sich nach links $a nach links $b (jede Bewegung bedeutet Multiplikation mit 2); (1) Verschiebung um 10 Ziffern nach links 10000000000(1024)Entspricht 1*2 hoch 10, es gibt keine Potenz in PHP. Die Berechnung ist wirklich frustrierend. $a > < 2 = 125610000000000(1024) Eine Verschiebung um 2 Bits nach rechts ist 100000000(256)php ist die Operation $a & $b und (bitweises UND) $a |. $b oder (bitweises ODER) $a ^ $b Xor (bitweises XOR) ~$a Nicht (bitweises NICHT) $a << > $b Shift right (Shift right)Detaillierte Erklärung von $a & $b Bitweises UND setzt die Bits, die beide 1 in $a und $b sind, auf 1; Beispiel: 10 & 12 = 810 101012 1100 1000 8$a |. $b Bitweises ODER setzt eines von $a oder $b auf 1; Beispiel: 10 | Bitweises XOR-Beispiel: 10 ^ 1210 101012 1100 0110 6~a Bitweise nicht die 0 in $a auf 1 setzen, sondern die 1 auf 0. Beispiel: ~10 = 10 1010 1 11111111111111111111110101 -11$a << $b Linksverschiebung verschiebt das Element in $a $b mal nach links (jede Bewegung bedeutet Multiplikation mit 2); Beispiel: 1 << durch 10 Ziffern 10000000000(1024) entspricht 1*2 hoch 10. Es ist wirklich deprimierend, dass es in PHP keine Power-Operation gibt. $a >> $b Rechtsverschiebung verschiebt den Wert in $a nach rechts $b (jede Bewegung bedeutet Division durch 2); Eine Verschiebung um 2 Stellen nach rechts ergibt 100000000(256)