当前位置: 技术问答>java相关
一个位移问题???????????//
来源: 互联网 发布时间:2015-11-03
本文导语: 以下数据相应为int -65280———1111 1111 0000 0000 [1]: 1111 1111 0000 0000>>5即除以32 结果为 0000 0111 1111 1000 前五位怎么是0000 0与[3]有何不同? [2]: 1111 1111 0000 0000>>>5 结果为 1111 1111 1111 1000 前五位怎么...
以下数据相应为int
-65280———1111 1111 0000 0000
[1]: 1111 1111 0000 0000>>5即除以32
结果为 0000 0111 1111 1000 前五位怎么是0000 0与[3]有何不同?
[2]: 1111 1111 0000 0000>>>5
结果为 1111 1111 1111 1000 前五位怎么是1111 1与[4]有何不同?
[3] 10101011>>2
结果为 11101010 前两位是11?
[4] 10101011>>>2
结果为 00101010 前两位是00?
[5] 位移的什么情况在前面加0 或1?
[6] 是不是所有的二进制最高位在JAVA中均为符号位?如果是?上面的[4]也为负了?
[7] 1073741824对应
0100 0000 0000 0000 0000 0000 0000 0000 0000 是算术位移,>>>是逻辑位移
前者左边位补上最高位的bit,后者补0
-65280的binary是11111111111111110000000100000000
你的那个是65280
-65280———1111 1111 0000 0000
[1]: 1111 1111 0000 0000>>5即除以32
结果为 0000 0111 1111 1000 前五位怎么是0000 0与[3]有何不同?
[2]: 1111 1111 0000 0000>>>5
结果为 1111 1111 1111 1000 前五位怎么是1111 1与[4]有何不同?
[3] 10101011>>2
结果为 11101010 前两位是11?
[4] 10101011>>>2
结果为 00101010 前两位是00?
[5] 位移的什么情况在前面加0 或1?
[6] 是不是所有的二进制最高位在JAVA中均为符号位?如果是?上面的[4]也为负了?
[7] 1073741824对应
0100 0000 0000 0000 0000 0000 0000 0000 0000 是算术位移,>>>是逻辑位移
前者左边位补上最高位的bit,后者补0
-65280的binary是11111111111111110000000100000000
你的那个是65280
|
同意 chenyuan_tongji(codeguru)
|
java 有符号位