码迷,mamicode.com
首页 > 其他好文 > 详细

byte转bit

时间:2019-04-02 10:34:54      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:csharp   []   arp   return   nbsp   项目   public   get   har   

 

 

由于项目需要,传过来的数据是高位到低位的Byte,需要输出低位到高位的bool数组。

 public static bool[] getBits(byte[] byt)
        {
            bool[] ret = new bool[byt.Length * 8];
            for (int j = byt.Length - 1; j >= 0; j--)
            {
                for (int i = 0; i < 8; i++)
                {
                    ret[(byt.Length -j) * 8 - i-1] = (byt[j] & (128 >> i)) != 0;
                }
            }
       
            return ret;
        }

 

如果是单一Byte转bit数组,那么可以用这个简易的:

  private bool[] byteToBits(byte val)
        {
            bool[] ret = new bool[8];
            for (int i = 0; i < 8; i++)
            {
                ret[i] = (val & (1 << i)) != 0;
            }
            return ret;
        }

  

  

 

byte转bit

标签:csharp   []   arp   return   nbsp   项目   public   get   har   

原文地址:https://www.cnblogs.com/vingxu/p/10640857.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!