永发信息网

串口编程:请问VB 中 怎么把浮点数转换为十六进制的Byte型

答案:1  悬赏:0  手机版
解决时间 2021-02-17 22:55
请问VB 中 怎么把浮点数转换为十六进制的Byte型 . 我做的是串口编程
最佳答案
VB转化这个东西有点烦。我以前做过的一段代码如下(验证过的):
Public Function funSignSngTo4Byt(SingleData As Single) As Boolean
'高位在前,低位在后
Dim i, d As Integer
Dim PorN As Byte
Dim ExpVal, temp As Long
Dim FraVal, t1 As Long
Dim SingleFra, tempval As Single
If SingleData = 0 Then
For i = 0 To 3
gbytBinData(i) = 0
Next i
Exit Function
End If
If SingleData >= 0 Then '符号位
PorN = 0
Else
PorN = &H80
SingleData = -1 * SingleData '变为正数
End If
ExpVal = Int(Log(SingleData) / Log(2)) '指数
If ExpVal > 128 Then
funSignSngTo4Byt = False
Exit Function
End If
If ExpVal = 127 Then
SingleFra = SingleData / (2 ^ ExpVal)
Else
SingleFra = SingleData / (2 ^ ExpVal) - 1
End If
FraVal = Int(SingleFra * 128 * 256 * 256) And &HFFFFFF
ExpVal = ExpVal + 127
gbytBinData(0) = PorN + ExpVal \ 2
gbytBinData(3) = FraVal And &HFF
FraVal = Int(FraVal \ 256)
gbytBinData(2) = FraVal Mod 256
FraVal = FraVal \ 256
gbytBinData(1) = (FraVal Mod 256) Or ((ExpVal And 1) * 128)
End Function
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
古代为历史做出伟大贡献的女性有哪些
家人腿摔断了,打电话回家要怎样问候合适?
没结婚之前 我老婆有四级智力残疾证 监护全写
深圳职业技术学院究竟是3A还是3B啊,我2012年
生物专业博士毕业生就业状况如何
【冲压外圈滚针轴承】滚针轴承冲压外圈滚针轴
王品台塑牛排无锡万象城店这个地址在什么地方
东京食种第二季百度云资源
上海嘉定高科技园区(水电路)地址有知道的么?
黄岐镇顺丰电话
怎样用手机取消手机阅读包
【流行文化】流行文化是()衍生的文化。
新疆的南疆那里是牛羊养殖最集中?
阿那亚恋情讲的到底是什么
自选商店地址在什么地方,想过去办事
推荐资讯
为什么红米note不能用内存卡
我站在你门外,捧着花儿等你出来
以前左手一个痣,现在有长了一个。谁能给我讲
足球场面积大约多少
86版聊斋全集迅雷下载,妈妈想看,希望有资源
《枫叶阁》对联:竹影横窗知月上
怎么查询交行挂号信编码
骨子里的冷傲是什么意思
谁有2k13白巧克力贾森威廉姆斯面补啊?
为什么现在的男人女人都不着急结婚呢?
【叩首】简述为什么要三叩首。
同事想买一款燃油宝,说是发动机动力下降,想
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?