二进制及其运算符
- “&”:按位与。用于对两个操作数的每一个比特位执行与操作。例如:a & b。
- “|”:按位或。用于对两个操作数的每一个比特位执行或操作。例如:a | b。
- "~ ":按位非。用于对操作数的每一个比特位执行非操作(取反操作)。例如:~a。
- “^”: 按位异或。用于对操作数的每一个比特位执行非操作(相同为0不同为1)。例如:a ^ b。
- ”<<“:左移。将操作数的二进制表示向左移动指定位数,右侧用零填充。例如:a << 2。
- “>>”:带符号右移。将操作数的二进制表示向右移动指定位数,左侧用符号位填充(正数用0填充,负数用1填充)。例如:a >> 2。
- “>>>”:无符号右移。将操作数的二进制表示向右移动指定位数,左侧用零填充。例如:a >>> 2。
js中的二进制
在JavaScript中,二进制数值可以通过使用前缀0b或0B来表示。二进制数值可用于表示整数,范围为从0到2^53-1。这是因为JavaScript使用64位浮点数表示数字,其中1位用于表示正负号,11位用于表示指数,剩下的52位用于表示小数部分。
换句话说,JavaScript中的二进制表示范围从0到9007199254740991(即2的53次方减1)。超出此范围的整数将无法准确表示,可能会导致精度丢失