测试人生  
----软件因为我们,而感觉更美丽!
日历
<2008年12月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

导航

常用链接

留言簿

随笔分类

随笔档案

文章分类

人才招聘

休闲娱乐

博客好友

学习资源

常用链接

广州资源

操作系统

数据库

测试资源

湖北-武汉

网上交易

资源搜索

 

1、原码、反码、补码的存储形式(一般计算机中是采用补码的形式)
1)原码:左边最高位为符号位。    
原码  +7   00000111     -7      10000111

2)反码:左边最高位为符号位,正数与原码相同,负数符号位为1,其它位为原码取反。  
反码  +7   00000111     -7      11111000

3)补码:左边最高位为符号位,正数与原码、反码相同,负数符号位为1,其它位为原码取反然后加1,超过位数进位的左边最高位会被丢弃。
原码:+0   00000000     -0      10000000
反码:+0   00000000     -0      11111111
补码:+0   00000000     -0      11111111+1=100000000(进位1被丢弃)

2、JAVA中的位运算符
1)按位与
  0     0   按位与:0;
  0     1   按位与:0;
  1     0   按位与:0;
  1     1   按位与:1;
2)按位或
  0     0   按位或:0;
  0     1   按位或:1;
  1     0   按位或:1;
  1     1   按位或:1;
3)按位异或
  0     0   按位异或:0;
  0     1   按位异或:1;
  1     0   按位异或:1;
  1     1   按位异或:0;
4)按位取反
  1     按位取反:0;
  0     按位取反:1;


3、移位运算
1)<<为左移运算符
十进制     二进制           <<2        
 +17      00010001        01000100     
 -17      11101111        10111100
2)>>为带符号右移运算符
十进制     二进制           >>2        
 +17      00010001        00000100     
 -17      11101111        11111011
3)>>>为无符号右移运算符
十进制     二进制           >>>2        
 +17      00010001        00000100     
 -17      11101111        00111011

posted on 2009-06-10 23:05 测试兔子 阅读(184) 评论(0)  编辑 收藏 引用 所属分类: JAVA学习笔记
只有注册用户登录后才能发表评论。
 
Copyright © 测试兔子 Powered by: 博客园 模板提供:沪江博客