⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ieeefloat.c

📁 TI公司的CCS一些常用的函数库
💻 C
字号:
int32 f_PICtoIEEE(float f)
{
   int16 c[2];
   
   memcpy((int8*)c  , ((int8*)&f)+3, 1);
   memcpy((int8*)c+1, ((int8*)&f)+2, 1);
   memcpy((int8*)c+2, ((int8*)&f)+1, 1);
   memcpy((int8*)c+3, ((int8*)&f)  , 1);
   c[1] = ((c[1] >> 1) & 0x7F80) + (c[1] & 0x7F) + ((c[1] & 0x80) << 8);
   return ((int32)c[1] << 16) | c[0];
}


float f_IEEEtoPIC(int32 f)
{
   float ret;
   int16 temp;
   
   memcpy(&temp, ((int8*)&f)+2, 2);
   temp = ((temp << 1) & 0xFF00) + (temp & 0xFF);
   
   if(bit_test(f, 31))      // Test the sign bit
      temp |= 0x0080;
   else
      temp &= 0xFF7F;
   
   memcpy(((int8*)&ret)+3, ((int8*)&f)     , 1);
   memcpy(((int8*)&ret)+2, ((int8*)&f)+1   , 1);
   memcpy(((int8*)&ret)+1, ((int8*)&temp)  , 1);
   memcpy(((int8*)&ret)  , ((int8*)&temp)+1, 1);
   
   return ret;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -