b是两位,a= (byte)((b>> 8) & 0xFF);是为了使b的高位为0,只剩下低位

解决方案 »

  1.   

    谢谢1楼,不过想问一下,在 >>8 的时候左侧8位已经都变成0了,这种写法有没有什么特殊的用意呀?
      

  2.   

    么区别!& 0xFF跟没有与是一样的!
      

  3.   

    ushort 是16位的
    byte是8位的~ & 0xFF之后取的是b的高8位0xff可能是用于过滤最前面的符号位的,
    之前我在用子网掩码计算广播地址的时候就遇到过这样的问题,不与的话会有溢出,当然这里的类型是USHORT应该不会有这样的问题~~int型会有种问题