C++学习笔记
通过逻辑运算判断一个数字是否为2的n次幂
方法1.判断n&(n-1)=0;
方法2.判断n&(-n)=n;
负数二进制表现形式:负数对应正数二进制取反加一。
例题:LeetCode231题;
注意:
- 原码表示法规定:用符号位和数值表示带符号数,正数的符号位用“0”表示,负数的符号位用“1”表示,数值部分用二进制形式表示。
- 反码表示法规定:正数的反码与原码相同,负数的反码为对该数的原码除符号位外各位取反。
- 补码表示法规定:正数的补码与原码相同,负数的补码为对该数的原码除符号位外各位取反,然后在最后一位加1.
- 正零和负零的补码相同,[+0]补=[-0]补=0000 0000B