位运算和进制转换,反码补码
生活随笔
收集整理的這篇文章主要介紹了
位运算和进制转换,反码补码
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
進(jìn)制轉(zhuǎn)換
package junit;public class Test {public static void main(String[] args) { // int a=Integer.MIN_VALUE;int b=Integer.MAX_VALUE;int c=Integer.MIN_VALUE;System.out.println(b);System.out.println(c);print(b);// 最高位表示 符號位 最高位0 表示正數(shù) 最高位為1 表示負(fù)數(shù) java中整型的最大值為 2的31次方減1 第32位表示數(shù)的正負(fù) 0-31位表示數(shù)的值print(c);//~ 運(yùn)算符 取反print(~c);print(-5);// 11111111111111111111111111111011 /* * 第32位表示符號位 * 0~31位表示 值 * 將0~31的值 取反之后 加一 最終的值為 十進(jìn)制 * 1 1111111111111111111111111111011 * ~取反 * 1 0000000000000000000000000000100 * +1 * 1 0000000000000000000000000000101 表示十進(jìn)制的5 * 2的1次方 加 2的0次方 加 2的1次方 =2+1+2 =5 * *///無符號數(shù)值的范圍為 0~2的32次方減1 有符號數(shù)值的范圍為 -2的31次方~2的31次方減1 // print(a);int a=3;print(a);print(a<<1);//左移1位print(a<<2);//左移2位/** 運(yùn)算符或 |* 1 | 0 1* 1 | 1 1* 0 | 0 0* 0 | 1 1* 有1則1* */print(11);print(22);print(11|22);/** 運(yùn)算符 異或 ^* 1 ^ 0 1* 1 ^ 1 0* 0 ^ 0 0* 0 ^ 1 1* 相同為0* 相異為1** */print(11);print(22);print(11^22);/** 運(yùn)算符 且 &* 1 & 0 0* 1 & 1 1* 0 & 0 0* 0 & 1 0* 相同為0* 相異為1* 兩個(gè)為1 則1 其余為0* */print(11);print(22);print(11&22);/* * * << 帶符號右移 * <<< 不帶符號右移 * * * */ print(Integer.MIN_VALUE); print(Integer.MIN_VALUE>>>1); print(Integer.MIN_VALUE>>1); /* * 相反數(shù) * * * */ int zz=5; int zzz=-zz; int z=(~zz+1); print(zz); print(zzz); print(z);System.out.println(zz);System.out.println(zzz);System.out.println(z);print(Integer.MIN_VALUE);print(~Integer.MIN_VALUE);print(~Integer.MIN_VALUE+1);System.out.println("--------");System.out.println(Integer.MIN_VALUE);System.out.println(~Integer.MIN_VALUE);System.out.println(-Integer.MIN_VALUE);System.out.println(~Integer.MIN_VALUE+1);//選擇排序 冒泡排序 插入排序}/*** 將十進(jìn)制的數(shù) 輸出為 二進(jìn)制的數(shù)* @param num*/public static void print(int num){for (int i=31;i>=0;i--){System.out.print((num&(1<<i))==0?"0":"1");//左移<<// 1左移31位后 為10000000000000000000000000000000 1個(gè)1 31個(gè)0// &運(yùn)算 /* 1&0 為 01&1 為 10&0 為 00&1 為0 */}System.out.println();} } 創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的位运算和进制转换,反码补码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 五用英语怎么说 五的英语是什么
- 下一篇: java压缩视频