j2me的一个算法
请教一个问题:
下面四句中16进制0xff是怎么算成二进制
这句具体是什么意思(0xff&( data > > 24))
tmp[0] = (byte)(0xff&( data > > 24)) ;
tmp[1] = (byte)(0xff&( data > > 16)) ;
tmp[2] = (byte)(0xff&( data > > 8)) ;
tmp[3] = (byte)(0xff&( data > > 0)) ;
------解决方案--------------------0xff=11111111
data> > 24右移24位以后和0xff进行与运算````data是个什么东西??
------解决方案--------------------把整数化成byte数组存入 将byte数组取出化成整数
1 int = 32bit = 4byte
tmp[0] = (byte)(0xff&( data > > 24)) ;取出第一个字节送到tmp[0]里
tmp[1] = (byte)(0xff&( data > > 16)) ;取出第二个字节送到tmp[1]里
tmp[2] = (byte)(0xff&( data > > 8)) ;取出第三个字节送到tmp[2]里
tmp[3] = (byte)(0xff&( data > > 0)) ;取出第四个字节送到tmp[3]里
这个问题以前就有人发过
------解决方案--------------------说白了就是一个int到4个byte的过程