php位運算 與 或 異或 取反

2022-08-12 03:54:20 字數 1285 閱讀 5644

<?php/**

php中有4個位運算,分別是&與 |或 ^異或 ~取反

& 兩位全為1,結果為1

| 有一位為1,結果為1

^ 乙個為0,乙個為1,結果為1

~ 取反0->1,1->0

1.二進位制的最高位是符號位,0表示正數,1表示負數。

2.正數的原碼,反碼,補碼都一樣。

3.負數的反碼=它的原碼符號位不變,其它位取反(0->1,1->0)。

4.負數的補碼=它的反碼+1。

5.0的反碼,補碼都是0.

6.php沒有無符號數,換言之,php中的數都是有符號的。

7.在計算機運算的時候,都是以補碼的方式來運算的。**/

//異或

echo 13&7;

echo "

";echo 5|4;

echo "

";echo -3^3;

//推理過程:/**

13&7

13的補碼 00000000 00000000 00000000 00001101

7的補碼 00000000 00000000 00000000 00000111

13&7 00000000 00000000 00000000 00000101 = 5

5|45的補碼 00000000 00000000 00000000 00000101

4的補碼 00000000 00000000 00000000 00000100

5|4 00000000 00000000 00000000 000000101 =5

-3^3

-3的補碼

-3的原碼 10000000 00000000 00000000 00000011

-3的反碼 11111111 11111111 11111111 11111100

-3的補碼 11111111 11111111 11111111 11111101

3的補碼 00000000 00000000 00000000 00000011

-3^3 11111111 11111111 11111111 11111110 《補碼》

推反碼《對補碼-1》

11111111 11111111 11111111 11111101 《反碼》

推原碼《符號位不變 其他取反》

10000000 00000000 00000000 00000010 《原碼》 =-2

注意:因為二進位制沒有進製和退位,可以看做是10-1,那就等於1了**/

?>

php位運算 與 或 異或 取反

php中有4個位運算,分別是 與 或 異或 取反 兩位全為1,結果為1 有一位為1,結果為1 乙個為0,乙個為1,結果為1 取反0 1,1 0 1.二進位制的最高位是符號位,0表示正數,1表示負數。2.正數的原碼,反碼,補碼都一樣。3.負數的反碼 它的原碼符號位不變,其它位取反 0 1,1 0 4....

位運算(與 或 異或 取反 右移 左移)

1 按位與 對兩個數進行操作,然後返回乙個新的數,這個數的每個位都需要兩個輸入數的同一位都為1時才為1,如下圖 a b 結果為 12,二進位制為 0000 1100 2 按位或 比較兩個數,然後返回乙個新的數,這個數的每一位設定1的條件是兩個輸入數的同一位都不為0 即任意乙個為1,或都為1 如下圖 ...

C 與 或 異或 取反等運算

1.按位與 2.按位或 3.按位異或 4.按位取反 5.左移 6.右移 應用一 應用二 求兩數之和 求兩數之差 位運算符號優先級別從高到低 其中 自由向左 1.按位與 0 0 0,0 1 0,1 0 0,1 1 1。即同為1才為1 c 輸出乙個數的二進位制 標頭檔案 include 如果a為int,...