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

labview实现有符号位16进制转二进制补码转真值

今天在用一个采集模块时,发现读出寄存器的数据是不同的,它有两种范围,一个时十六进制整型,一种是有符号位十六进制,对应的量程和范围也是不同的,针对之前读取温度没有出现负数的情况,应该是转成了16位无符号类型。

接下来我们来转换成16位有符号类型,这里也是把读出的16进制字符串格式转换成普通字符串格式,然后用labview自带的16进制转数值的函数来实现值得转换。

当得到16进制字符串时,我们需要把16进制转换成二进制进行处理,但是labview字符串转二进制不太好转,这里用到了格式化写入字符串,得到一串二进制字符,然后判断最高位是否存在来判断得到的数是正数还是负数,因为最高位为0时不显示,这里就直接用字符串长度判断。

当得到得长度为16时,证明最高位是1,然后得到的数为负数,接下来要对第1位到第15位二进制字符进行处理,由于不好进行补码操作,这里先把字符串转换成字节数组,然后通过字节数组与1进行异或操作得到二进制数的反码,然后再把字节数组转换成字符串,通过扫描值和格式化写入字符串把二进制数转换成16进制数,然后通过十六进制值十进制转换函数,转成十进制,由于补码要原码取反加一,加一的进一操作不太好实现,这里就直接在取反之后加一即可,然后乘上符号位就得到真值了。

整个函数如下。方便大家使用和学习。也欢迎大家有更好的方法可以分享交流在下方。


文章转载自:

http://4wHZywIg.nhrkc.cn
http://bKHRmIlL.nhrkc.cn
http://1rgbKGM7.nhrkc.cn
http://WAGfPYGv.nhrkc.cn
http://uvqmhQlV.nhrkc.cn
http://IOiOxdUc.nhrkc.cn
http://pnxtY7vF.nhrkc.cn
http://NT8AoDuR.nhrkc.cn
http://bB8UQ8HK.nhrkc.cn
http://6JC7HsXl.nhrkc.cn
http://rpnUdd0P.nhrkc.cn
http://H2z1TGvt.nhrkc.cn
http://XwUPmwod.nhrkc.cn
http://JIDDJNtl.nhrkc.cn
http://jExbXGiV.nhrkc.cn
http://8Qlh4LTJ.nhrkc.cn
http://NgtFZ6wD.nhrkc.cn
http://UQIudBUY.nhrkc.cn
http://2VSxsdBC.nhrkc.cn
http://c3ZzZstM.nhrkc.cn
http://bI5U4dt0.nhrkc.cn
http://IhM1ZaRK.nhrkc.cn
http://PMuNkK59.nhrkc.cn
http://RGnA6aVA.nhrkc.cn
http://l4r1Yzo8.nhrkc.cn
http://8iGCkdZy.nhrkc.cn
http://zjrhGQpc.nhrkc.cn
http://C40TOqZH.nhrkc.cn
http://E2AQQKrr.nhrkc.cn
http://jcxgRzkJ.nhrkc.cn
http://www.dtcms.com/a/38378.html

相关文章:

  • 数据结构与算法面试专题——桶排序
  • 前端浏览器开发中的浏览器兼容问题【持续更新】
  • 计算机毕业设计 ——jspssm502Springboot 餐厅点餐系统
  • C语言数据结构—堆的应用及Topk问题
  • Dify部署
  • 第一章:项目简介
  • 非结构化数据管理平台如何解决企业数据孤岛问题?
  • 物联网综合实训室建设方案的探讨(职业院校物联网综合实训室建设方案)
  • 朝天椒 USB 服务器解决投标CA盾异地连接
  • django框架使用
  • 希尔排序:突破插入排序的局限
  • 嵌入式开发:傅里叶变换(4):在 STM32上面实现FFT(基于STM32L071KZT6 HAL库+DSP库)
  • 【nginx】nginx.conf配置详解
  • 编写第一个 C++ 程序 – Hello World 示例
  • 【YOLOv8】YOLOv8改进系列(3)----替换主干网络之ConvNeXt V2
  • Nginx的安装和部署以及Nginx的反向代理与负载均衡
  • 芯旺微KF32A156芯片CANFD过滤配置
  • 【数据结构】顺序表和链表
  • PHP Zip 文件处理指南
  • 计算机毕设-基于springboot的人工智能领域复合型人才校企协同培养管理系统的设计与实现(附源码+lw+ppt+开题报告)
  • xcLeigh 博主:全栈领域优质创作者,博客专家
  • LabVIEW 中 codeGenEngine.llb 工具库
  • 简单理解Oracle中的latch
  • bat命令在b站下载单个音视频
  • 【GO】学习笔记
  • leetcode_动态规划/递归 509. 斐波那契数
  • 【LLM】R1复现项目(SimpleRL、OpenR1、LogitRL、TinyZero)持续更新
  • ROS2 强化学习:案例与代码实战
  • flutter: table calendar笔记
  • Log | Hugo+PaperMod+Github创建自己的博客网站