1. 原码,反码,补码
对于有符号的数字而言: 1. 二进制的最高位是符号位,0表示正数,1表示负数 2. 正数的原码,反码,补码都一样 3. 0的反码,补码都是0 4. 负数的反码=它的原码符号位不变,其余位取反(0变成1,1变成0) 5. 负数的补码=它的反码+1 6. 在计算机运算的时候,都是以补码的方式来运算的
2,位运算符和移位运算符
2.1 位运算符 ##原理就是将两个数字转换成它的补码,对补码的每一位进行:与,或,异或,然后再将得到的结果转换为原码 1. 按位与&,两个全为1,则为1,否则为0 2. 按位或|,两位有一个为1,结果为1 3. 按位异或^, 两位相同为0,否则为1
2.2 移位运算符
1. a>>n 将数值a对应的二进制乘以2的n次方,即除符号位外,其余向右移动n位,在符号位后面补上相同个数的0
2. a<<n 将数值a对应的二进制除以2的n次方,即除符号位外,其余向左移动n位,在最后相同个数的0