在 SciLab 中将十六进制转换为浮点数
Posted
技术标签:
【中文标题】在 SciLab 中将十六进制转换为浮点数【英文标题】:Conversion of hex to Float in SciLab 【发布时间】:2016-02-06 04:57:06 【问题描述】:我正在尝试以十六进制表示 f.ex 读取浮点数
43079A11
这应该给我 135.601822,(类似于这个网站所做的 http://babbage.cs.qc.cuny.edu/IEEE-754.old/32bit.html) 使用 SciLab。 当我尝试使用 hex2dec 函数时,我得到了
hex2dec('43079A11')
ans =
1.125D+09
我一般不精通 IEEE 和浮点系统,所以请耐心等待。我该怎么做才能产生正确的结果?
【问题讨论】:
我冒昧地将您的答案移到了适当的位置:答案框。是的,所有 Scilab 变量都是双精度的。 【参考方案1】:[由问题作者撰写。]我找到了使用FloatingPoint package的解决方案:
flps = flps_systemnew("IEEEsingle")
flpn = flps_numbernew ( "hex" , flps , '43079A11')
res = flps_numbereval(flpn)
如果没有包,SciLab 似乎根本无法进行单点精度。
【讨论】:
以上是关于在 SciLab 中将十六进制转换为浮点数的主要内容,如果未能解决你的问题,请参考以下文章