PHP 计算机码、位运算、运算符优先级
计算机码
计算机在实际存储数据的时候,是采用编码规则的(二进制编码)
计算机码存储的过程: 原码、反码和补码,数值最左边一位用来充当符号位:符号为正数为0,负数为1
原码:数据本身从十进制转换为二进制的值
----正数:左边符号位为0
----负数:左边符号位为1
反码:针对负数
,符号位不变,其他位取反
补码:针对负数
,反码 + 1
示例:
位运算
位运算符
运算符 | ||
---|---|---|
& | 按位于 | 两个为都为1,则返回1,否者都是0 |
| | 按位或 | 两个有一个为1,返回1, |
~ | 按位取反 | 0转换为1,1转换为0 |
^ | 按位异或 | 两个相同则为0,不同为1 |
<<< | 按位左移 | 整个位(32)位,向左移动一位,右边补0 |
>>> | 按位右移 | 整个位,向右移动一位,左边补符号位(正数补0,负数补1) |
具体看示例:
按位与
按位或
按位非
按位异或
按位右移
按位左移
运算符优先级
同时进行多个运算符,如何运算