-
负数二进制的表示:先写出绝对值的二进制,再取其反码,再将反码加1,就得到负数的的二进制表示数了。所以,负数进行位运算后,求其十进制的结果时,则先减1获得反码,再取反获得正值的二进制,转化为十进制的数值后,再求相反数即可。老师这方面讲得真的不清楚啊……查看全部
-
public static byte[] int2Bytes(int id){ byte[] arr=new byte[4]; arr[0]=(byte)(int)((id>>0*8)&0xff); arr[1]=(byte)(int)((id>>1*8)&0xff); arr[2]=(byte)(int)((id>>2*8)&0xff); arr[3]=(byte)(int)((id>>3*8)&0xff); return arr; } public static int bytes2int(byte[] arr){ int sum=0; for (int i = 0; i < arr.length; i++) { int s0=(int)((arr[i]&0xff)<<i*8); sum+=s0; } return sum; } public static byte[] long2Bytes(long id){ byte[] arr=new byte[8]; for (int i = 0; i < arr.length; i++) { arr[i]=(byte)(int)((id>>i*8)&0xff); } return arr; } public static long bytes2long(byte[] arr){ int sum=0; for (int i = 0; i < arr.length; i++) { long s0=(long)((arr[i]&0xff)<<i*8); sum+=s0; } return sum; }查看全部
-
byte转为int public static int bytes2int(byte[] arr){ int sum=0; for (int i = 0; i < arr.length; i++) { int s0=(int)((arr[i]&0xff)<<i*8); sum+=s0; } return sum; }查看全部
-
大小端法查看全部
-
参考文章 大端小端格式详解 http://blog.csdn.net/zhaoshuzhaoshu/article/details/37600857 位运算的威力 http://blog.csdn.net/iukey/article/details/7195265查看全部
-
原码,反码,补码查看全部
-
无符号右移运算查看全部
-
右移运算查看全部
-
左移运算查看全部
-
取反运算查看全部
-
异或运算2查看全部
-
异或运算1查看全部
-
按位或|查看全部
-
位与运算查看全部
-
二进制位运算 特定情况下,计算方便,速度快,被支持面广查看全部
举报
0/150
提交
取消