labview实现大小端交换移位

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

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

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

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

相关推荐
LabVIEW开发6 小时前
LabVIEW直流电机性能通用测试系
labview·labview知识·labview功能·labview程序
纳米软件3 天前
电源模块纹波与噪声测试:从原理到自动化实现
自动化·labview·电源测试系统·atecloud·零代码软件开发
纳米软件5 天前
电源模块纹波测试自动化方案设计与实践
自动化测试·自动化·labview·电源测试系统·atecloud
LabVIEW开发8 天前
LabVIEW直流电机性能通用测试系统
labview·labview知识·labview功能·labview程序
纳米软件8 天前
电源测试系统编程软件选择:LabVIEW与ATECLOUD对比
labview·电源测试系统·atecloud
电气_空空9 天前
基于 Labview/Matlab 的人脸识别系统设计与实现
单片机·嵌入式硬件·毕业设计·labview
Abcdsa9 天前
基于LABVIEW串口的现场实时多通道温度采集测量与实现
labview
LabVIEW开发9 天前
LabVIEW数据库单字段更新实操
数据库·labview·labview知识·labview功能·labview程序
纳米软件1 个月前
在使用LabVIEW时,遇到以下问题该如何解决?
自动化测试·labview·自动化测试平台
LabVIEW开发1 个月前
LabVIEW通过OPC开发汽车踏板疲劳测试控制系统
labview·labview知识·labview功能·labview程序