php如何把数字取反,PHP中关于位运算符 与 或 异或 取反

/**

* author:LMS

* createTime:2015/07/22

* desctiption:位运算[ & | ^ ~ ]

* 与&:如果a、b两个值不相同,则与结果为0。如果a、b两个值相同,与结果为1

* 或|:与逻辑中的或一致【只有两个值都为假时才为假,其余都为真】

* 异或【xor】如果a、b两个值不相同,则异或结果为1。如果a、b两个值相同,异或结果为0

* 取反【~】:对每一位取反

* 【注意!非 ==>是逻辑运算符,返回是个布尔值

*/

/** 十进制 二进制[取负数【补码知识】 正数-256 ] 255== 1111 1111

* 5 0000 0101

* 12 0000 1100

*(与-and)& ----------------

* 0000 0100 ===》4

*

*(或 - or)| ------------------

* 0000 1101 ===》13

*

*(非-not)! ===》返回一个布尔值

*

* (取反)~5[250] -------------------

* [负数补码]0 1111 1010==>x+256=250==>x=-6【取反这里只是我猜测理解的,若有错,请指正!】

*

* (异或-xor)^ -------------------

* 0000 1001 ===>9

*/

echo 5 & 12;//输出4

echo '


';echo 5 | 12;//输出13

echo '


';//echo !5 ;//返回真,但是不答应,echo是用于打印字符串的,print_r用于打印数组比较方便,var_dump()打印所有类型变量

echo '


';

//echo !0;//!false var_dump(!1);得到是个布尔值,都将输出1==>!true

echo ~5; //输出-6

echo '


';

echo 5^12;//输出9

php位运算 与 或 异或 取反

[Java 泥水匠] Java Components 之二:算法篇之项目实践中的位运算符(有你不懂的哦)

作者:泥沙砖瓦浆木匠网站:http://blog.csdn.net/jeffli1993个人签名:打算起手不凡写出鸿篇巨作的人,往往坚持不了完成第一章节. 交流QQ群:[编程之美 365234583] ...

python中的位运算符

按位运算符是把数字看作二进制来进行计算的.Python中的按位运算法则如下,下表中变量 a 为 60,b 为 13,二进制格式如下: a = 0011 1100 b = 0000 1101 ----- ...

js中的位运算符 ,按位操作符

按位操作符(Bitwise operators) 将其操作数(operands)当作32位的比特序列(由0和1组成),而不是十进制.十六进制或八进制数值.例如,十进制数9,用二进制表示则为1001.按 ...

PHP中为位运算符(几乎很少用)

PHP语言里的位运算符&.|.^ .~.〈〈 .〉〉 "&" 按位与运算 按位与运算符"&"是双目运算符.其功能是参与运算的两数各对应的 ...

Javascript中的位运算符和技巧

ECMAScript 整数有两种类型,即有符号整数(允许用正数和负数)和无符号整数(只允许用正数).在 ECMAScript 中,所有整数字面量默认都是有符号整数,这意味着什么呢? 有符号整数使用 3 ...

Java中的位运算符、移位运算

一.位运算 Java中有4个位运算,它们的运算规则如下: (1)按位与 (&)  :两位全为1,结果为1,否则为0: (2)按位或  (|)   :两位有一个为1,结果为1,否则为0: (3) ...

分享:Python中的位运算符

按位运算符是把数字看作二进制来进行计算的.用的不太多,简单了解. 下表中变量 a 为 60,b 为 13二进制格式如下: a = 0011 1100 b = 0000 1101 a&b = 0 ...

Java中的位运算符

Java提供的位运算符有:左移( <> ) .无符号右移( >>> ) .位与( & ) .位或( | ).位非( ~ ).位异或( ...

随机推荐

零基础在线制作Windows Phone 8 应用

任何用户(不管你是否会编程),只要你有浏览器,都可以使用 Windows Phone App Studio (下文中用App Studio指代) 快速制作出一个属于你的Windows Phone的应用 ...

Android ListView添加多种类型的ItemView

一般复杂的ListView都会重写BaseAdapter,通过重用convertView来减少inflate,通过setTag()和ViewHolder改变ItemView的内容. 重写BaseAda ...

java&colon;读&sol;写配置文件

package jimmy; import java.io.*; import java.util.Properties; public class Program { public static v ...

SCU3312 Stockholm Knights(最大流)

题目大概说一个n×m的格子中,'.'代表空地,'#'代表障碍,'K'代表骑士,'D'代表目的地.骑士每走一步花一条,每一步可以往(+2,+3)(-2,+3)...八个方向走,问占领所有目的地最少要几天 ...

win2008主机IIS7&period;x 关于web&period;config设置301重定向

win2008主机IIS7.x 关于web.config设置301重定向 要求:windows主机是IIS7.0或以上的版本 方法如下: 在网站的根目录下新建web.config文件并将一下代码加入到 ...

MySQL row模式binlog复制原理

http://www.360doc.com/content/14/1107/14/12904276_423333021.shtml

单纯形法C&plus;&plus;实现

作者:jostree 转载请注明出处 http://www.cnblogs.com/jostree/p/4156685.html 使用单纯型法来求解线性规划,输入单纯型法的松弛形式,是一个大矩阵,第一 ...

zabbix discovery

preface(见面礼): 仅扫tcp端口: netstat -tnlp|egrep -i "$1"

关于bootstrap列偏移的两种方式

第一种方式:

shell编程基础&lpar;三&rpar;&colon; 位置参数与shell脚本的输入输出

一.位置参数和特殊变量 有很多特殊变量是被Shell自动赋值的,我们已经遇到了$?和$1,现在总结一下: 常用的位置参数和特殊变量: $0 相当于C语言main函数的argv[0] $1.$2... ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值