国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

PHP運算符(四)”位運算符“實例講解

2020-03-22 18:28:26
字體:
來源:轉載
供稿:網友
我們已經講解了PHP運算符中的“php算術運算符”,“php字符串運算符”,“賦值運算符”,今天給大家詳細介紹一下PHP運算符中的“位運算符”。

位運算符在PHP中不經常用到,但是他的用處還是很大,下面的內容我們會舉例說明一下位運算符的用法。

位運算符是指對二進制位從低位到高位對齊后進行運算,它允許對整型數中指定的位進行求值和操作。

在PHP中的為運算符如下表所示

運算符說明例子&按位與$m & $n |按位或$m | &$n^按位異或$m ^ $n~按位非或按位取反$m ~ $n<< 左移$m << $n>>右移$m >> $n

下面我們用例子來上面一下上表中的運算符

<?php$m=1;                //1=0 00000001$n=2;                 //2=00000010$mn=$m&$n;echo $mn."<br/>";$mn=$m^$n;echo $mn."<br/>";$mn=$m|$n;echo $mn;?>

代碼運行結果:

1.png

例子解釋:

$m&$n : 二者都為 1 時為 1 ,否則為 0。即把 $a 和 $b 中都為 1 的位設為 1 ,否則設為 0 。

00000001 ← $m
& 00000010 ← $b

比較結果為00000000,所以輸出0


$m^$n :在按位亦或的過程中,不同為1,相同為0。
00000001 ← $m

^ 00000010 ← $n

所以結果為00000011,進而輸出3。


$m|$n: 在按位或的過程中,有1為1,全0為0,

00000001 ← $m

| 00000010 ← $n

則結果為00000011,所以輸出3

上面的例子講了“按位或”,“按位或”,“按位異或”,下面我們再來看一下后面的三種示例


按位非或按位取反示例,代碼如下

<?php$m = 2;$m1 = ~$m;echo $m1;?>

運行結果

2.png

此時我們的運行結果為-3,這里需要注意。

注:在計算機中,負數以其正值的補碼形式表達。

1: 2的32位原碼為 0000 0000 0000 0000 0000 0000 0000 0010

2: 按位取反后為 1111 1111 1111 1111 1111 1111 1111 1101

由于最前面的數為1,符號位為1,即為負數,所以,以其正值的補碼形式表示為:(符號位不變,按位取反,末尾加1)

1000 0000 0000 0000 0000 0000 0000 0011

所以輸出為-3



左移右移代碼示例

<?php$m = 12;     // 12=00001100$n = 3;     // 3=00000011$mn= $m << $n;echo $mn ."<br/>";$mn= $m >> $n;echo $mn ; ?>

運行結果:

4.png

示例解釋:


$m<<$n:將 $m 中的位向左移動 $n 次(每一次移動都表示“乘以 2”,即“乘以 2$b ”)。
0000 1100 ← $m
<< 0110 0000 左移3個,空出的位置用 0 補充


0110 0000 = 96


$m>>$n:將 $m中的位向右移動 $n 次(每一次移動都表示“除以 2”,即“乘以 2 -$b ”)。
0000 1100 ← $m
<< 0000 0001 右移3個,多出的位置截掉


0000 0001 = 1


上面的內容就是PHP運算中的“位運算符”的詳細內容,如果有什么不懂的,可以關注我們PHP ,在上面進行留言,我們將第一時間給你解答或者在PHP 搜索,也許能找到你想的。下一節,我們將詳細介紹PHP運算中的邏輯運算符。

以上就是PHP運算符(四)”位運算符“實例講解的詳細內容,更多請關注 其它相關文章!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 赣榆县| 江西省| 五家渠市| 监利县| 当阳市| 南澳县| 宁安市| 咸阳市| 昌吉市| 古浪县| 桦甸市| 原平市| 孟连| 文安县| 普洱| 深圳市| 宁晋县| 沅江市| 东山县| 鱼台县| 灵石县| 黄平县| 如皋市| 政和县| 灵宝市| 长子县| 望江县| 松溪县| 泗阳县| 池州市| 六安市| 晋城| 伊宁市| 修武县| 黄骅市| 富锦市| 涟源市| 三原县| 文山县| 蒙山县| 普兰县|