永发信息网

java 移位操作符问题

答案:1  悬赏:30  手机版
解决时间 2021-01-28 20:50
  • 提问者网友:山高云阔
  • 2021-01-28 15:23
java 移位操作符问题
最佳答案
  • 五星知识达人网友:长青诗
  • 2021-01-28 16:43
(1)100 1100 0000 1010 >> 2 ----- 1111 0011 0000 0010
有符号位移 。最高位(括号的数)为符号位的1,1代表负数。右移后产生新的符号位1,
即拿1补最高位
1(1)10 0110 0000 0101 右移1位
11(1)1 0011 0000 0010 右移2位

1100 1100 0000 1010 >>>2 ----- 0011 0011 0000 0010
无符号位移。即拿0补最高位
0(1)10 0110 0000 0101
00(1)1 0011 0000 0010追问多谢你!
还想问一下为什么这个可以直接移位?
什么时候需要经过原码,反码和补码转换之后才能移位呢?
是除二进制之外的其它类型吗?追答补码转换是针对‘人阅读的整数’比如字符串表示的整数,转换成字节的存储形式。
比如人读的“255”转换成11111111一个字节。
位移可以在任何计算机保存的数据上进行。只做机械移动,不受其他规则影响。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯