当前位置: 首页 > article >正文

labview实现大小端交换移位

在解码时遇到了大小端交换的问题,需要把高低字节的16进制值进行互换,这里一时间不知道怎么操作,本来打算先把16进制转字节数组,算出字节数组的大小,然后通过模2得到0,1,来判断是否为奇数位和偶数位,因为得到的数据为双数字节,这里只需要实现奇数位偶数位的数据互换就可以了,但是实现过程中发现,当第一个余数为0时,把他插入数组的第二个位置并不能实现,因为此时是一个空数组,最后得到的数据也只是一个数。

因此得到一个结论,空数组不能插入0以外的索引值。

后面改正了一下方法,因为要实现奇数位和偶数位互换,我们可以采取先删除一个,再插入一个的做法,这样的话就不会因为空数组导致不能互换的结果。当余数为0时证明是奇数位的数据进来,我们只需要删除掉当前索引位置的数据,这里给到长度为1索引就用for循环的i值,然后进行删除操作,并把删除后的值通过另一个移位寄存器传过来,传到下一次插入数据备用,当余数为1时间证明已经到了偶数位,我们只需要把上一次删除的数据插入进去,也是利用for循环中i的值,就可以实现大小端数据互换的操作。

这里我给他加了一个校验,防止得到的数据不是偶数位的情况,这样的话就需要去排查一下哪里出了问题。然后跳出一个提示,提醒我们去排查一下。


http://www.kler.cn/a/581355.html

相关文章:

  • BambuStudio学习笔记:MinizExtension
  • 如何安全处置旧设备?
  • 为AI聊天工具添加一个知识系统 之143 设计重审 之8 多模态推理:情态和意向性
  • 使用 crontab 定时同步服务器文件到本地
  • 语音识别踩坑记录
  • Kubernetes服务部署 —— Kafka
  • 【最佳实践】Go 责任链模式实现参数校验
  • 鸿蒙系统中的持续部署
  • 专题三二分算法
  • 游戏引擎学习第150天
  • 正则表达式(2)匹配规则
  • 2012. 数组美丽值求和
  • 《火山引擎:开启数字化增长新引擎》
  • 【学习笔记】《逆向工程核心原理》01-逆向分析Hello World程序
  • 重构及封装
  • 2025-3-11 leetcode刷题情况(贪心算法--区间问题)
  • 计算机视觉算法实战——昆虫识别检测(主页有源码)
  • CSS小玩意儿:目录
  • 树莓派4B使用Ubuntu20.04连接不上热点
  • conda创建Python虚拟环境的原理