关于java:Java中右移和逻辑右移的区别

原文地址: https://stackoverflow.com/que…

>> 是算术右移 (arithmetic shift right), >>> 是逻辑右移 (logical shift right).

再算术位移中, 数字的符号位是放弃不变的.

例如: -2 用八进制示意就是 11111110, 最右边示意符号位, 如果是 1 的话则示意是正数. 将 -2 应用算术右移一位则会失去 11111111, 也就是 -1.

而逻辑位移则不论符号位是啥, 就是将右移后最右边的地位用 0 填充. 将 -2 进行算术右移一位将失去 01111111.

欢送拜访我的博客: http://blog.duhbb.com/

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理