php位运算

一、二进制基本概念:
所谓二进制就是逢二进一(0,1),因为使用二进制只有0,1两个数,易于电子方式实现。同时通过0、1组合可以表示任意一个数。
1、二进制的最高位是符号位(左边第一个数):0表示正数,1表示负数;
2、正数的原码、反码、补码都一样;
3、负数的反码=它的原码符号位不变,其他位取反(0->1,1->0);
4、负数的补码=它的反码+1;
5、0的反码补码都是0;
6、php没有无符号数,换言之php中的数都是有符号的;
7、在计算机运算的时候都是以补码的方式来运算的。

原码:
1 ------> 00000000 00000000 000000000 00000001

-1的原码:10000000 00000000 00000000 00000001
-1的反码:11111111 11111111 11111111 11111110
-1的补码:11111111 11111111 11111111 11111111

二、位运算一览表:


位运算一览表.png

该图的前面四个是位运算,其运算规则是:
按位与&:两位全为1,结果为1;
按位或|:两位有一个为1,结果为1;
按位异或^:两位一个为0,一个为1,结果为1;
按位取反~:0->1,1->0。

后面两个是位移运算,运算规则是:
算术右移:低位溢出,符号位不变,并用符号位补益出的高位;
算术左移:符号位不变,低位补0。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容