1. 取出一个字节(byte)中的每一位(bit)

代码如下:

uint8_t  Data = 0x52;uint8_t n[8]={0};//方法1:
n[0] = (Data & 0x01) == 0x01 ? 1 : 0;    //等于0
n[1] = (Data & 0x02) == 0x02 ? 1 : 0;    //等于1
n[2] = (Data & 0x04) == 0x04 ? 1 : 0;    //等于0
n[3] = (Data & 0x08) == 0x08 ? 1 : 0;    //等于0
n[4] = (Data & 0x10) == 0x10 ? 1 : 0;    //等于1
n[5] = (Data & 0x20) == 0x20 ? 1 : 0;    //等于0
n[6] = (Data & 0x40) == 0x40 ? 1 : 0;    //等于1
n[7] = (Data & 0x80) == 0x80 ? 1 : 0;    //等于0//方法2:
int i;
for(i=0;i<8;i++)
{n[i] = (Data & (0x01<<i)) == (0x01<<i) ? 1 : 0;
}

2. 将八个数据位合并成一个字节

代码如下:

uint8_t  Data = 0x00;uint8_t n[8]={0,1,0,0,1,0,1,0};//方法1:
Data = n[0]|(n[1]<<1)|(n[2]<<2)|(n[3]<<3)|(n[4]<<4)|(n[5]<<5)|(n[6]<<6)|(n[7]<<7);
//Data等于0x52//方法2:
int i;
for(i=0;i<8;i++)
{Data |= n[i]<<i;
}

C语言:位(bit)与字节(byte)之间的转换相关推荐

  1. String类以及String与基本数据类型/char[]/byte[]之间的转换

    String类: 1.String 声明为final的,不可被继承 2.String实现了Serializable接口:表示字符串是支持序列化的. 实现了Comparable接口:表示String可以 ...

  2. C# 16进制与字符串、字节数组之间的转换

    在串口通讯过程中,经常要用到 16进制与字符串.字节数组之间的转换 字符串转16进制字节数组  1         private static byte[] strToToHexByte(strin ...

  3. string与byte[]之间的转换

    在使用.NET加密类的时候,会经常用到string与byte[]之间的转换. 首先引用System.Text命名空间,然后 UnicodeEncoding unicode=new UnicodeEnc ...

  4. c语言字符串如何转换成gbk,C语言实现GBK/GB2312/五大码之间的转换(转)

    //--------------------------------------------------------------------------- // 大五码Big5转GBK码: void ...

  5. Stream 和Byte[] 之间的转换

    代码  1 //Stream 和Byte[]之间的转换  2 byte[] arr=new byte[stream.Length];//设定arr长度  3   4 stream.Read(arr,0 ...

  6. C# Stream 和 byte[] 之间的转换(文件流的应用)

    一. 二进制转换成图片 MemoryStream ms = new MemoryStream(bytes); ms.Position = 0; Image img = Image.FromStream ...

  7. C语言实现GBK/GB2312/五大码之间的转换(转)

    源:C语言实现GBK/GB2312/五大码之间的转换 //----------------------------------------------------------------------- ...

  8. [转]Stream 和 byte[] 之间的转换

    Code /* - - - - - - - - - - - - - - - - - - - - - - - -   * Stream 和 byte[] 之间的转换  * - - - - - - - - ...

  9. 计算机科学的一个字节是几位,位(bit)、字节(Byte)、KB、MB、GB ... 之间的关系

    位(比特位):bit(binary digit)(简写:b),是计算机数据存储最小的单位,二进制中,0或者1就是一个位(比特位)bit. 字节:Byte(简写:B),是计算机信息技术用于计量存储容量的 ...

  10. 位(bit)、字节(byte)、字符、编码

    一.位/比特位 位/比特位,数据存储的最小单位.每个二进制数字0或者1就是1个位. 二.字节(Byte) 字节(Byte)是一种计量单位,表示数据量多少,它是计算机信息技术用于计量存储容量的一种计量单 ...

最新文章

  1. MPB:南农金巍等-​​​瘤胃甲烷菌的分离培养与保存
  2. 我的spark学习之路(三):利用spark做回归分析
  3. linux桥接实现交换机功能
  4. DarknetTiny模型结构
  5. Spring Cloud【Finchley】-03将微服务注册到Eureka Server上 + 为Eureka Server添加用户认证
  6. 第十一回:琴房外度曲生慕意 书店里软语救阿四[林大帅作品集]
  7. 在asp.net中做视频转换,将各种视频文件转换成.flv格式
  8. WPF 圆型布局(测量过程)
  9. hdu 1525 博弈
  10. PCL学习(3)——kdtree搜索(error C2079: “pcl::KdTreeFLANN::param_radius_)
  11. OpenShift 4之访问权限分级授权
  12. doc文件在线预览 vue_跨平台(uniapp)文件在线预览解决方案
  13. 信号量实现环形buff下多生产者多消费者模型
  14. 2016保持谦卑,继续前行
  15. vs2015安装msdn_visual studio 2015离线版msdn下载和安装
  16. [译] 移动应用设计新趋势
  17. html oa 表单,OA表单制作(致远)
  18. 设置Windows 10 开机默认开启NUMLOCK
  19. 孩子兄弟表示法实现树
  20. [Android开发] ButterKnife8.5.1 使用方法教程总结

热门文章

  1. 什么是有效的PFMEA?有效PFMEA有什么特点?
  2. 2019.11.6早上vue听写
  3. Mac使用latex中文字体缺失
  4. 【设置】关闭“照片分享隐私”通过蓝牙分享照片,无位置信息
  5. Latex在表格中添加图片
  6. 颜色空间之CIE色度模型
  7. imdb-wiki数据集划分及处理、训练
  8. indesign如何画弧线_Illustrator and Indesign中鲜为人知的超级技巧
  9. 20190111 | 期末笔记博文汇总
  10. 服务器性能监控之性能计数器