byte x = (byte)((uint)33554433 & 255);希望高手指点。
感激不尽!!!!!

解决方案 »

  1.   

    无符号整型(uint)数据33554433 转换为二进制是:10 0000 0000 0000 0000 0000 0001
    255 转换为二进制是 1111 1111
    两个二进制数 执行 按位与操作,结果是:1。结果转换为byte是1所以结果是1
      

  2.   

    看看这个:http://www.jb51.net/article/16308.htm
      

  3.   

    10 0000 0000 0000 0000 0000 0001
      &                    1111 1111
    ————————————————————————————
    结果怎么算出是1的?
      

  4.   

    与运算的规则:1 & 1 = 1,1 & 0 = 0,0 & 1 = 0,0 & 0 = 0。运算数右对齐,然后按上述规则运算。
      

  5.   

      10 0000 0000 0000 0000 0000 0001
    &                        1111 1111
    -----------------------------------
      00 0000 0000 0000 0000 0000 0001
      

  6.   

    嘿嘿这个问题很简单 是位运算方面的!
    10 0000 0000 0000 0000 0000 0001
    &                        1111 1111
    -----------------------------------
      00 0000 0000 0000 0000 0000 0001& 是位运算的 and 的意思 其中1111 1111 ==00 0000 0000 0000 0000 1111 1111
    那它和 10 0000 0000 0000 0000 0000 0001 进行& 运算的结果就是 00 0000 0000 0000 0000 0000 0000 0001 == 1.
    如果看不懂位运算的话 就去查查相关的资料吧 不管是什么变成的书里都有!
      

  7.   

    10 0000 0000 0000 0000 0000 0001
                         & 1111 1111
    -----------------------------------
    00 0000 0000 0000 0000 0000 0001
      

  8.   


    & 是“与”操作,
    ^ 才是“异或”操作。