美文网首页
ios初步学习按位操作数据——写入

ios初步学习按位操作数据——写入

作者: 谢顶强 | 来源:发表于2021-12-15 16:51 被阅读0次

知识点:

数据的按位移动 <<,>> 及按位或 |

已知:

手机连接了一个蓝牙设备,在向设备发送数据时,需要将两个编号合并为1个字节的新编号。

样例:

编号1的值为2,编号2的值为1,将两个编号合并,结果为0x21,十进制表示为33。

省心操作:

将两个编号转换为十六进制的字符串,将两个字符串相加,即”2“+”1“=”21“。将结果按照十六进制字符串转换为int数据,得出33。

直接操作数据位

从省心的操作中我们知道,两个编号的值均不大于16,否则合并后的数字将超出一个字节,即大于0xFF。实际情况也是如此,两个编号的最大值为B,即十进制下的11。
于是,我们知道序号1的值为2,二进制表示为00000010。将之左移四位,得出结果00100000。
又已知编号2的值为1,二进制表示为00000001。
将左移后的编号1与编号2合并,得出二进制结果为00100001,十进制表示即为33。

代码如下:
uint8_t id1 = 2;  //
uint8_t id2 = 1;
uint8_t id = (id1<<4)|id2;
printf("id=%d\n",id); // 打印结果33

相关文章

  • ios初步学习按位操作数据——写入

    知识点: 数据的按位移动 <<,>> 及按位或 | 已知: 手机连接了一个蓝牙设备,在向设备发送数据时,需要将两个...

  • ios初步学习按位操作数据——读取

    学习目的: 一般情况下,数据的操作是按照整字节byte(即8bit)来进行的。但今天在新增硬件兼容的时候,查看对方...

  • iOS:按位操作符

    进制表示法: 按位操作符 向左移位运算符 << :对值进行向左移动,超出数据项的高位将丢失,低位移入的值总为0,该...

  • Mysql数据库的写入

    Mysql数据库的写入 异步写入数据库的异步写入操作。因为execute()及commit()提交数据库的方式是同...

  • #数据操作初步

    前面介绍了数据研究平台的安装,这片介绍如何用现成的库以及工具获取和导出数据。大部分的人物可在IDLE里完成。 因为...

  • C# winform listView 控件的使用

    将listview按表格显示,动态读取ini文件写入 上代码: 这里注意的是当我写入数据发现数据从第二列写入,第一...

  • iOS野狗云 分页查询数据

    在消息写入部分,我们在路径中写入的数据都是按写入数据的时间戳顺序排布的。那么问题来了,我们读取数据的时候是需要逆序...

  • 憶壹月拾壹日

    今天学习的主要是利用IIC总线向EEPROM进行数据传输。在EEPROM中进行读写操作,按位输入按页输入,连续读取...

  • 时序数据库特点与对比

    时序数据库的特点 数据写入时序数据会按照指定的时间粒度持续写入,支持实时、高并发写入,无须更新或删除操作。 数据读...

  • FMDB写入大量数据的处理方法

    ios中FMDB在写入本地大量数据的时候为了减少耗时操作的解决方案 今天在做app中插入4000多条数据来保存在本...

网友评论

      本文标题:ios初步学习按位操作数据——写入

      本文链接:https://www.haomeiwen.com/subject/trjpfrtx.html