码迷,mamicode.com
首页 > 编程语言 > 详细

java移位运算符实验程序:<<(左移)、>>(带符 号右移)和>>>(无符号右移)

时间:2017-07-16 10:07:27      阅读:208      评论:0      收藏:0      [点我收藏+]

标签:string   pop   mod   ==   data   符号   实验   int   class   




 
public class txs {



static void leftbit(){
int i;               //整型长度为32位                                                                                          //位
int num=0xFFFFFFE;  //1111 1111 1111 1111 1111 1111 1110      //28
for(i=0;i<28;i++){
//循环一次向左移动一位,丢弃最高位,0补最低位
num=num<<1;    //1111 1111 1111 1111 1111 1111 1110 0     //29
               //1111 1111 1111 1111 1111 1111 1110 00    //30
               //1111 1111 1111 1111 1111 1111 1110 000   //31
               //1111 1111 1111 1111 1111 1111 1110 0000  //-32
               //1111 1111 1111 1111 1111 1111 1100 0000  //-64
               
System.out.println(num);
}
}

static void rightbit(){
int i;               //整型长度为32位                                                                                          //位
int num=0xFFFFFFE;  //1111 1111 1111 1111 1111 1111 1110      //28
for(i=0;i<4;i++){
//循环一次向右移动一位     符号位不变,左边补上符号位
num=num >> 1;  //1111 1111 1111 1111 1111 1111 111        //27
               //1111 1111 1111 1111 1111 1111 11         //26
               //1111 1111 1111 1111 1111 1111 1          //25
               //1111 1111 1111 1111 1111 1111            //24
               
System.out.println(num);
}
}

//无符号右移
//
static void unregist_rightbit(){
int i;               //整型长度为32位                                                                                          //位
int num=0xFFFFFFE;  //1111 1111 1111 1111 1111 1111 1110      //28
for(i=0;i<4;i++){
//循环一次向右移动一位      忽略符号位扩展。0补最高位
num=num >>> 28;  //1111 1111 1111 1111 1111 1111 111        //27
               //1111 1111 1111 1111 1111 1111 11         //26
               //1111 1111 1111 1111 1111 1111 1          //25
               //1111 1111 1111 1111 1111 1111            //24
               
System.out.println(num);
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
//leftbit();      
rightbit();
System.out.println("================");
unregist_rightbit();
}


}

java移位运算符实验程序:&lt;&lt;(左移)、&gt;&gt;(带符 号右移)和&gt;&gt;&gt;(无符号右移)

标签:string   pop   mod   ==   data   符号   实验   int   class   

原文地址:http://www.cnblogs.com/jhcelue/p/7189573.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!