当前位置: 代码迷 >> Java相关 >> [求助]>>>,>>,
  详细解决方案

[求助]>>>,>>,

热度:157   发布时间:2006-05-15 19:06:00.0
[求助]>>>,>>,
public class Ceshi{
public static void main(String args[]){
int a=20; //二进制是10100;
int c=a>>>10; //这一行
System.out.println(Integer.toBinaryString(c));
}
}

我看书对位操作有三种>>>(逻辑右移,无符号右移),>>数学右移,有符号,左移<<
不知对位的操作还有哪些,怎么用,
为什么上面的操作执行a>>>10与a>>10结果都是0,只有a<<10结果才是101000000000000;

先说a>>>10,它是无符号右移,a>>>10表示A的二进制数向右移动10位,即截去右边10位,左边填充10个0;
按我的理解结果是000000000010100,可结果是0;

再说a>>10,它是有符号右移,a>>10表示A的二进制数向右移动10位,即截去右边10位,左边填充符号位(10个1);
按我的理解结果是111111111110100,可结果也是0;
只有最后一个(a<<10左移)跟我自学理解的一样,汗呀,不知原因,望大家给我讲讲这方面的知识.





还有个问题
public class Ceshi{
public static void main(String args[]){
int x=3,y=5,a=~x,b=x&y,c=x|y,d=x^y;
System.out.println(Integer.toBinaryString(x));
System.out.println(Integer.toBinaryString(y));
System.out.println(Integer.toBinaryString(a));
System.out.println(Integer.toBinaryString(b));
System.out.println(Integer.toBinaryString(c));
System.out.println(Integer.toBinaryString(d));
}
}
这个程序,跟我推算的结果有一个不同.
它输出的是

D:\>java Ceshi
11
101
11111111111111111111111111111100
1
111
110

我推算的是
11
101
00 //11取反不是00吗,为什么变成上面那个格式了!!!
001
111
110



讲讲呀


[此贴子已经被作者于2006-5-15 21:45:04编辑过]


----------------解决方案--------------------------------------------------------
以前没注重这些基础操作,大而化之,
不懂就过,
现在都不懂呢

[此贴子已经被作者于2006-5-15 19:07:16编辑过]


----------------解决方案--------------------------------------------------------


哇 哇哇
----------------解决方案--------------------------------------------------------
11取反不是00吗,为什么变成上面那个格式了!!!
因为11是一个int型的数据,所以它是32位的,也就是说
11实际上是00000000000000000000000000000011
所以取反后就变成了那个样子了
----------------解决方案--------------------------------------------------------

THANK YOU,大哥,一语惊醒梦中人呀
还有上面的第一个问题>>>,>>谁来给我讲讲呢?


----------------解决方案--------------------------------------------------------
都 \是一个道理
反符号向右移多少位而已
两个当然都是0啦,把1都移出去了
----------------解决方案--------------------------------------------------------
谢了呀
----------------解决方案--------------------------------------------------------
终于把为操作弄动了

----------------解决方案--------------------------------------------------------
  相关解决方案