原反补码和移位操作符
int在内存中占4Byte,也就是32位。默认是有符号的。
最左边一位是符号位,0为正,1为负。
正数的原反补码相同。
负数的反码是原码除符号位外全部按位取反。
负数的补码是反码+1。
内存中存储的是补码。
移位操作符的操作数只能是非负整数,负数是未定义的。
左移操作符<<
左边抛弃、右边补0
右移操作符>> 分成两种
a.逻辑位移:左边补0、右边抛弃
b.算数位移:左边用原符号位填充、右边抛弃
%d意味着打印有符号的整数
int在内存中占4Byte,也就是32位。默认是有符号的。
最左边一位是符号位,0为正,1为负。
正数的原反补码相同。
负数的反码是原码除符号位外全部按位取反。
负数的补码是反码+1。
内存中存储的是补码。
移位操作符的操作数只能是非负整数,负数是未定义的。
左移操作符<<
左边抛弃、右边补0
右移操作符>> 分成两种
a.逻辑位移:左边补0、右边抛弃
b.算数位移:左边用原符号位填充、右边抛弃
%d意味着打印有符号的整数