php关于位运算符
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php关于位运算符,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1294字,纯文字阅读大概需要2分钟。
内容图文
![php关于位运算符](/upload/InfoBanner/zyjiaocheng/205/d525f6dfae0f4faa85b8c773a2c3c253.jpg)
&(按位与):对应位同时为1时,在&运算后则为1,否则为0
|(按位或):对应位有一个为1时,在|运算后则为1,同为0时则为0
^(按位异或):对应位不同时为1时,在^运算后为1,同时为0时则为0,同时为1时^运算后也是0
~(按位取反):$a+(~$a)=-1
在计算机中,负数以其正值的补码形式表达。
在这里我们就要知道三个概念了,原码,反码和补码。
原码:一个整数,按照绝对值大小转换成的二进制数,称为原码。
8的原码为:0000 0000 0000 0000 0000 0000 0000 1000
反码:将二进制数按位取反,所得的新二进制数称为原二进制数的反码。取反操作指:1变0, 0变1。
8按位取反:1111 1111 1111 1111 1111 1111 1111 0111
补码:反码加1称为补码。也就是说,要得到一个数的补码,先得到反码,然后将反码加上1,所得数称为补码。
正数的补码与其原码相同;负数的补码是在其反码的末位加1
反码加1:1000 0000 0000 0000 0000 0000 000 1001;这样就得负数的正值的补码形式。也就是-9了。
参考:http://www.cnblogs.com/setsail/archive/2013/05/22/3093542.html
http://my.oschina.net/WarRome/blog/90707
以上解释自己也没有看的太懂,但实践得出$a+(~$a)=-1
小例如下:
$m=8;
$n=12;
$p=-109;
$mn=$m&$n;
echo $mn."
";
$mn=$m|$n;
echo $mn."
";
$mn=$m^$n;
echo $mn."
";
$mn=~$m;
echo $mn."
";
$mn=~$p;
echo $mn."
";
?>
输出结果:
8
12
4
-9
108
关于按位取反的问题,再琢磨琢磨
内容总结
以上是互联网集市为您收集整理的php关于位运算符全部内容,希望文章能够帮你解决php关于位运算符所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。