Heim > Artikel > Backend-Entwicklung > Detaillierte Erklärung der Bitoperatoren in PHP
Die bitweisen Operatoren ermöglichen die Auswertung und Manipulation bestimmter Bits in einer Ganzzahl.
Der bitweise Operatorin PHP ist wie unten gezeigt
例子 | 名称 | 结果 |
---|---|---|
$a & $b |
And(按位与) | 将把和中都为 1 的位设为 1。 |
$a | $b |
Or(按位或) | 将把和中任何一个为 1 的位设为 1。 |
$a ^ $b |
Xor(按位异或) | 将把和中一个为 1 另一个为 0 的位设为 1。 |
~ $a |
Not(按位取反) | 将中为 0 的位设为 1,反之亦然。 |
$a 09164dac8a74f068ade4a0c64fb12573> $b |
Shift right(右移) | 将中的位向右移动次(每一次移动都表示“除以 2”)。 |
Bitweise Verschiebung ist mathematisch PHP-Betrieb. In eine beliebige Richtung herausbewegte Bits werden verworfen. Beim Verschieben nach links wird die rechte Seite mit Nullen aufgefüllt und das Vorzeichenbit wird weggeschoben, d. h. das Vorzeichen bleibt nicht erhalten. Beim Verschieben nach rechts wird die linke Seite mit Vorzeichenbits aufgefüllt, wodurch das Vorzeichen erhalten bleibt.
Achten Sie auf die Konvertierung des Datentyps. Wenn das linke und das rechte Argument beide Strings sind, dann operieren die bitweisen Operatoren mit den ASCII-Werten der Zeichen.
PHPs INI-Einstellung error_reporting verwendet bitweise Werte und
bietet ein echtes Beispiel für das Ausschalten eines bestimmten Bits. Um alle Fehler außer der Eingabeaufforderungsebene
anzuzeigen, verwenden Sie Folgendes in php.ini: E_ALL & ~E_NOTICE
Vier gängige bitweise Operatoren: & (bitweises Und), | (bitweises ODER) , ^ (bitweises exklusives ODER), ~ (bitweise Negation)
& (Bitweises UND): Wenn die entsprechenden Bits beide 1 sind , ist es nach der &-Operation 1, andernfalls ist es 0
| (Bitweises ODER): Wenn eines der entsprechenden Bits 1 ist, ist es nach der |-Operation 1, und wenn beide 0 sind , es ist 0
^ (bitweises exklusives ODER): Wenn die entsprechenden Bits nicht gleichzeitig 1 sind, sind sie nach der ^-Operation 1, und wenn sie gleichzeitig 0 sind, sind sie 0 und 1 gleichzeitig. Nach der ^-Operation ist es auch 0
~ (bitweise Negation): $a+(~$a)=-1
In Computern sind negative Zahlen ausgedrückt in der Komplementform ihrer positiven Werte.
Hier müssen wir drei Konzepte kennen: Originalcode, Umkehrcode und Komplementcode.
Originalcode: Eine Ganzzahl, die entsprechend ihrem Absolutwert in eine Binärzahl umgewandelt wird, wird als Originalcode bezeichnet. Der ursprüngliche Code von
8 lautet: 0000 0000 0000 0000 0000 0000 0000 1000
Einerkomplement: Die Binärzahl wird bitweise invertiert und die resultierende neue Binärzahl wird Einerkomplement von genannt die ursprüngliche Binärzahl. Negationsoperation bedeutet: 1 wird 0, 0 wird 1.
8 bitweise Negation: 1111 1111 1111 1111 1111 1111 1111 0111
Komplementcode: Der Komplementcode plus 1 wird als Komplementcode bezeichnet. Das heißt, um das Komplement einer Zahl zu erhalten, muss zuerst das Komplement ermittelt und dann 1 zum Komplement addiert werden. Die resultierende Zahl wird Komplement genannt.
Das Komplement einer positiven Zahl ist dasselbe wie ihr Originalcode; das Komplement einer negativen Zahl besteht darin, 1 zur letzten Ziffer ihres Komplements zu addieren
Addiere 1 zum Komplement: 1000 0000 0000 0000 0000 0000 000 1001. Dies ergibt die Komplementform des positiven Werts einer negativen Zahl. Das ist -9.
Beispiel
<?php $m=8; $n=12; $p=-109; $mn=$m&$n; echo $mn."<br>"; $mn=$m|$n; echo $mn."<br>"; $mn=$m^$n; echo $mn."<br>"; $mn=~$m; echo $mn."<br>"; $mn=~$p; echo $mn."<br>"; ?>
Ausgabeergebnis:
8 12 4 -9 108
Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung der Bitoperatoren in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!