Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erklärung der Bitoperatoren in PHP

Detaillierte Erklärung der Bitoperatoren in PHP

怪我咯
怪我咯Original
2017-06-20 13:28:163091Durchsuche

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn