gpt4 book ai didi

c++ - 在 MATLAB 中解析具有十六进制浮点常量的文件

转载 作者:行者123 更新时间:2023-11-30 17:54:16 26 4
gpt4 key购买 nike

我正在尝试在 MATLAB 中解析包含一些浮点测试 vector 的文件。

这是文件的一部分:

b32+    +1.7FFFFFP127   -1.7FFFFFP127   +0.0P0  
b32+ +1.000000P0 -1.6D0976P9 -1.6CC976P9
b32+ +1.000000P-126 -1.000000P-126 +0.0P0
b32+ -1.7FFFFFP127 +1.7FFFFFP127 +0.0P0
b32- -1.7FFFFFP127 -1.7FFFFFP127 +0.0P0
b32- +1.000000P0 -1.000000P0 +1.000000P1
b32- -1.7C3AB6P14 +1.000000P0 -1.7C3CB6P14
b32- +1.2F0948P14 +1.000000P0 +1.2F0748P14
b32- -1.000000P-126 +1.000000P-126 -1.000000P-125
b32- +1.000000P-126 +1.000000P-126 +0.0P0
b32- -1.000000P-126 +1.0410ADP-103 -1.0410AEP-103
b32- +1.7FFFFFP127 +1.7FFFFFP127 +0.0P0
b32* +1.12D2C6P92 -1.000000P0 -1.12D2C6P92
b32* +1.7FFFFFP127 -1.000000P0 -1.7FFFFFP127
b32* -1.7FFFFFP127 +1.000000P0 -1.7FFFFFP127
b32* -1.5FEA32P-51 +1.000000P0 -1.5FEA32P-51
b32* -1.000000P-126 +1.000000P0 -1.000000P-126
b32* -1.000000P0 +1.000000P0 -1.000000P0
b32* +1.000000P0 +1.000000P0 +1.000000P0
b32* +1.000000P-126 +1.000000P0 +1.000000P-126
b32* +1.000000P-126 +1.7FFFFFP127 +1.7FFFFFP1

由于混合数据类型,我基本上不知道如何解析这个文件。

此文件中显示了三种可能的浮点运算(加法:b32+、减法:b32- 和乘法:b32*)。前两个数字是操作数,最后一个数字是结果。

我想稍后将数字格式化为 32 位浮点格式(我可能可以弄清楚)。问题是我不知道如何获取“b32+”之类的内容,然后将数字转换为变量,以便将它们转换为标准浮点格式。

我计划实现一种数字算法,它查看符号 (+/-) 并据此设置符号位。查看“.”之间的十六进制和“P”并将其设置为有效数。然后将P后面的数字作为无偏指数。然后我计划对其他号码重复此过程。

谢谢!

最佳答案

这实际上就是我正在寻找的:

c = sscanf(line,'b32%c %c%c.%xP%d %c%c.%xP%d %c%c.%xP%d',[1,inf]);

关于c++ - 在 MATLAB 中解析具有十六进制浮点常量的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15035912/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com