`
szzhi
  • 浏览: 79511 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

php位运算 与 或 异或 取反

    博客分类:
  • php
 
阅读更多

<?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 "<br/>";
echo 5|4 ;

echo "<br/>";
echo -3^3;

//推理过程:

/**

13&7

13的补码  00000000 00000000 00000000 00001101
7的补码   00000000 00000000 00000000 00000111
13&7      00000000 00000000 00000000 00000101   = 5

5|4

5的补码 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了

 

**/
?>

分享到:
评论

相关推荐

    韩顺平位运算

    位运算主要包括按位与(&)、按位或(|)、按位异或(^)、按位取反(~)、左移()和右移(&gt;&gt;)等操作。这些操作直接对二进制数的每一位进行处理,能够高效地实现某些特定功能,比如数据压缩、快速判断某个标志是否被设置等。 ...

    JS通过位运算实现权限加解密

    2. **或运算符("|"]**:两个数进行逐位或运算,只要对应的二进制位中有1,结果位就为1,否则为0。例如,10与7进行或运算得到15(二进制1111)。 3. **异或运算符("^")**:两个数进行逐位异或运算,相同位为0,...

    PHP 使用位运算实现四则运算的代码

    在PHP中,通常不直接使用位运算来实现除法,而是使用内置的除法运算符(/)或其他算法。 总结,通过位运算实现PHP的四则运算,可以提高代码的运行效率,尤其是在大数据量或者性能敏感的场景。但需要注意的是,这种...

    PHP程序设计-3期(KC016) 2.5.3位运算符拓展知识.doc

    ASCII码是一种字符编码标准,每个字符都有一个唯一的7位或8位二进制数字代表,这样位运算符就可以用于字符串中的字符处理。 4. **位运算的实际应用**: - **数据压缩**:通过位运算,可以有效地存储和传输数据,...

    浅析关于PHP位运算的简单权限设计

    位运算包括"与(&)"、"或(|)"、"非(~)"、"异或(^)"以及左移()和右移(&gt;&gt;)等操作。在二进制表示中,这些运算符对数字的每一位进行操作。例如,"与"运算符会检查两个数的相应位,如果都是1,则结果位为1,否则为0;"或...

    php_二进制_原码_反码_补码.docx

    php二进制与位运算符 在计算机科学中,二进制是最基本的表示方式。 PHP 作为一种编程语言,也需要使用二进制来表示数字。理解二进制的原码、反码、补码是非常重要的。本文将详细介绍二进制的基本概念、原码、反码、...

    php-leetcode题解之比特位计数.zip

    在PHP中,处理比特位通常涉及使用位运算符,如按位与(&),按位或(|),按位异或(^),左移(),右移(&gt;&gt;),以及按位非(~)。 1. **位运算符**: - **按位与(&)**:如果两个对应位都是1,则结果位为1,否则为0。 - **按...

    【自学PHP】第三课:PHP运算符

    * 位或运算符:`|` * 异或运算符:`^` * 取反运算符:`~` * 左移运算符:` * 右移运算符:`&gt;&gt;` 例如: ```php $a = 5; $b = $a ; echo $b; ``` 八、其他运算符 在 PHP 中,还有其他一些运算符,例如: * 执行...

    php符号说明及数据库操作关键字说明

    - `|` 位或运算。 - `^` 位异或运算。 - `左移位运算,将位向左移动指定的位数。 - `&gt;&gt;` 右移位运算,将位向右移动指定的位数。 - `~` 位取反运算,对二进制表示的每个位取反。 8. 逻辑运算: - `小于运算。 ...

    PHP常用符号和函数.docx

    - **位运算**:`& | ^ &lt;&lt; &gt;&gt; ~`,分别表示按位与、按位或、按位异或、左移、右移、按位取反。 - **逻辑运算**:`&lt; &gt; &lt;= &gt;= != && || !`,分别表示小于、大于、小于等于、大于等于、不等于、逻辑与、逻辑或、逻辑非。...

    韩顺平php函数讲解笔记.doc

    - 按位或`|`:对应位置上的比特只要有一个为1,结果就为1。 - 按位异或`^`:对应位置上的比特不同时,结果为1。 - 按位取反`~`:将二进制数的每一位都取反。 - 左移`将二进制位向左移动若干位,右边空出的位置补...

    PHP中的按位与和按位或操作示例

    位运算包括按位与(&)、按位或(|)、按位异或(^)、按位取反(~)、左移()和右移(&gt;&gt;)等。本文主要介绍PHP中的按位与和按位或操作,并通过示例代码进行阐释。 首先,让我们了解按位与操作。按位与(&)操作符,对两个数的每...

    PHP运算符,包括算数运算符、递增递减运算符、比较运算符、逻辑运算符、三元运算符、字符串连接运算符、赋值运算符、位运算符

    8. **位运算符**:这些运算符用于对二进制位进行操作,如按位与 `&`,按位或 `|`,按位异或 `^`,左移 `,右移 `&gt;&gt;`。例如,`$k &= 3;` 会将 `$k` 的二进制表示与3进行按位与运算,然后把结果赋回给 `$k`。 了解和...

    PHP新手总结的PHP基础知识.doc

    - **位或**:`|`。 - **位异或**:`^`。 - **左移位**:`。 - **右移位**:`&gt;&gt;`。 - **按位取反**:`~`。 ### 8. 逻辑运算符 - **比较运算符**:`, `&gt;`, `, `&gt;=`, `!=`。 - **逻辑运算符**:`&&`, `||`, `!`。 ###...

    php中符号的含义

    2. **按位或运算符**:`|` - 用途:按位进行“或”运算。 - 示例:`$bitwiseOr = $a | $b;` 3. **按位异或运算符**:`^` - 用途:按位进行“异或”运算。 - 示例:`$bitwiseXor = $a ^ $b;` 4. **左移运算符...

    PHP速查索引

    - `|`(位或):按位进行OR运算。 - `^`(位异或):按位进行XOR运算。 - `~`(位非):按位进行NOT运算。 - `(位左移):将一个数的所有位向左移动指定位数。 - `&gt;&gt;`(位右移):将一个数的所有位向右移动指定位数...

    PHP考试题-单项选择题

    - **解析:** PHP的位运算符包括 `&` (按位与)、`|` (按位或)、`~` (按位取反)、`^` (按位异或)、`(左移) 和 `&gt;&gt;` (右移)。 - **答案:** D. ! **9. 关于PHP变量的说法正确的是** - **解析:** - A选项错误,PHP...

    MMX和SSE实现的opencv数据结构的图像反色算法优化

    在实现图像反色(也称为位逻辑操作或颜色反转)时,我们可以遍历每个像素,并对每个通道的值进行取反操作。常规的逐像素处理方式效率较低,而利用MMX和SSE,我们可以将多个像素的处理合并到一个指令中,大大提高了...

    PHP常用特殊运算符号和函数总结(php新手入门必看)

    位运算符包括按位与(&)、按位或(|)、按位异或(^)、左移()和右移(&gt;&gt;),以及取反(~)。逻辑运算符包括小于(&lt;)、大于(&gt;)、小于等于()、大于等于(&gt;=)、不等于(!=)、逻辑与(&&)、逻辑或(||)和...

    php各种运算符

    包括:`&`(按位与)、`|`(按位或)、`^`(按位异或)、`~`(按位取反)、`(左移)、`&gt;&gt;`(右移)。 **示例代码:** ```php &lt;?php $a = 5; // 二进制表示为 0101 $b = 3; // 二进制表示为 0011 echo ($a & $b) ...

Global site tag (gtag.js) - Google Analytics