请问,
如何找出一个Byte里面某一位或者某几位的值呢?
比如
11110000,
如何找出第2位和第三位的值呢..
本人新手,对进制和位操作的概念仅限于听说过.
谢谢.

解决方案 »

  1.   

                byte source = 0xF3;    //(11110011)
                int[] arrbit = new int[8];
                for (int i = 0; i < 8; i++)
                {
                    arrbit[i] = (source >> i) & 0x01;
                    Console.WriteLine("bit{0}: {1} ", i, arrbit[i]);
                }
                Console.ReadKey();
      

  2.   

    这个就像个数组一样操作啊,就是去第几个元素:
     Byte[] by = {0,1,2,3,4};
    System.Windows.Forms.MessageBox.Show(Convert .ToString (by[offset ]));
      

  3.   

    非也,最低位是Bit0,最高位是Bit7
    上面的是没有错的哟
      

  4.   

    也许是和你所讲的第几位这种说法不一致
    但常规是以bit0,bit1...bit7...来描述位的
      

  5.   

    0xFF = 255 = 11111111;int d = 0xFF;取第一位 bool p = ((d >> 7 & 0x01) == 1)或者  bool p = ((d >> 7 | 0x00) == 1)