📄 ibmtoieee.txt
字号:
#include <stdlib.h>
#include <math.h>
#include <iostream.h>
#include <Sysutils.hpp>
typedef struct {
unsigned value : 24;
signed ex : 8;
}IbmData;
int ibmToIeee(float *dataI4, float *data, int start, int samples)
{
union{
float ydata;
IbmData ibm;
};
double base = 16.0;
for(int i=0;i<samples;i++){
ydata = dataI4[i+start];
float sign = 1;
if(ibm.ex<0){
sign = -1.0;
ibm.ex = 128+ibm.ex;
}
ibm.ex = ibm.ex -70;
try
{
double aa = pow(base,ibm.ex);
if(fabs(aa)<1.0E-12){
data[i] = 0;
continue;
}
data[i] = (aa)*ibm.value*sign;
}catch(...){
MessageBox(0,(IntToStr(i)).c_str(),"",MB_OK);
}
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -