java 位运算符

wuguiwu 2012-10-18 08:56:10
新手问题:
请问二进制的8右移30位后得到的是什么
希望附加推算过程
谢谢
...全文
128 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
king_wz 2012-10-19
  • 打赏
  • 举报
回复
看看 lz
绝版男子 2012-10-19
  • 打赏
  • 举报
回复
位移的运算本来就是要先把十进制数字转化为二进制,又不是要你自己先算出二进制,所以楼主这个问题问得...
soton_dolphin 2012-10-18
  • 打赏
  • 举报
回复
等于零
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
java输出的话应该是0

就是把
0000 1000
内存中的1向右移30个位置
剩下的全是0了。
[/Quote]
+1
zhaoming262350 2012-10-18
  • 打赏
  • 举报
回复
首先说一下二进制数是0,1组成的,8不是二进制的
用C实现的代码:
#include <stdio.h>
int main()
{
int B=8;
printf("B>>30=%u\n",B>>30); // 输出0
}
用java实现的代码:
public class Test6
{
public static void main(String [] args)
{
int i=8;
int j=i>>30;
System.out.println(j); //输出的是0
}
}
Elaine00 2012-10-18
  • 打赏
  • 举报
回复
这个有个方法就是左移一位就是乘以2,右移一位就是除以2;8除以30个2,结果当然是0
iceworldvip 2012-10-18
  • 打赏
  • 举报
回复
java输出的话应该是0

就是把
0000 1000
内存中的1向右移30个位置
剩下的全是0了。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧