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

📄 x-cvsweb-markup(47)

📁 软件浮点数计算功能
💻
📖 第 1 页 / 共 5 页
字号:
      }                                                                 \  } while (0)#define _FP_FRAC_ADDI_2(X,I)    \  __FP_FRAC_ADDI_2(X##_f1, X##_f0, I)#define _FP_FRAC_ADD_2(R,X,Y)   \  __FP_FRAC_ADD_2(R##_f1, R##_f0, X##_f1, X##_f0, Y##_f1, Y##_f0)#define _FP_FRAC_SUB_2(R,X,Y)   \  __FP_FRAC_SUB_2(R##_f1, R##_f0, X##_f1, X##_f0, Y##_f1, Y##_f0)#define _FP_FRAC_DEC_2(X,Y)     \  __FP_FRAC_DEC_2(X##_f1, X##_f0, Y##_f1, Y##_f0)#define _FP_FRAC_CLZ_2(R,X)     \  do {                          \    if (X##_f1)                 \      __FP_CLZ(R,X##_f1);       \    else                        \    {                           \      __FP_CLZ(R,X##_f0);       \      R += _FP_W_TYPE_SIZE;     \    }                           \  } while(0)/* Predicates */#define _FP_FRAC_NEGP_2(X)      ((_FP_WS_TYPE)X##_f1 < 0)#define _FP_FRAC_ZEROP_2(X)     ((X##_f1 | X##_f0) == 0)#define _FP_FRAC_OVERP_2(fs,X)  (_FP_FRAC_HIGH_##fs(X) & _FP_OVERFLOW_##fs)#define _FP_FRAC_EQ_2(X, Y)     (X##_f1 == Y##_f1 && X##_f0 == Y##_f0)#define _FP_FRAC_GT_2(X, Y)     \  (X##_f1 > Y##_f1 || X##_f1 == Y##_f1 && X##_f0 > Y##_f0)#define _FP_FRAC_GE_2(X, Y)     \  (X##_f1 > Y##_f1 || X##_f1 == Y##_f1 && X##_f0 >= Y##_f0)#define _FP_ZEROFRAC_2          0, 0#define _FP_MINFRAC_2           0, 1#define _FP_MAXFRAC_2           (~(_FP_WS_TYPE)0), (~(_FP_WS_TYPE)0)/* * Internals  */#define __FP_FRAC_SET_2(X,I1,I0)        (X##_f0 = I0, X##_f1 = I1)#define __FP_CLZ_2(R, xh, xl)   \  do {                          \    if (xh)                     \      __FP_CLZ(R,xh);           \    else                        \    {                           \      __FP_CLZ(R,xl);           \      R += _FP_W_TYPE_SIZE;     \    }                           \  } while(0)#if 0#ifndef __FP_FRAC_ADDI_2#define __FP_FRAC_ADDI_2(xh, xl, i)     \  (xh += ((xl += i) < i))#endif#ifndef __FP_FRAC_ADD_2#define __FP_FRAC_ADD_2(rh, rl, xh, xl, yh, yl) \  (rh = xh + yh + ((rl = xl + yl) < xl))#endif#ifndef __FP_FRAC_SUB_2#define __FP_FRAC_SUB_2(rh, rl, xh, xl, yh, yl) \  (rh = xh - yh - ((rl = xl - yl) > xl))#endif#ifndef __FP_FRAC_DEC_2#define __FP_FRAC_DEC_2(xh, xl, yh, yl) \  do {                                  \    UWtype _t = xl;                     \    xh -= yh + ((xl -= yl) > _t);       \  } while (0)#endif#else#undef __FP_FRAC_ADDI_2#define __FP_FRAC_ADDI_2(xh, xl, i)     add_ssaaaa(xh, xl, xh, xl, 0, i)#undef __FP_FRAC_ADD_2#define __FP_FRAC_ADD_2                 add_ssaaaa#undef __FP_FRAC_SUB_2#define __FP_FRAC_SUB_2                 sub_ddmmss#undef __FP_FRAC_DEC_2#define __FP_FRAC_DEC_2(xh, xl, yh, yl) sub_ddmmss(xh, xl, xh, xl, yh, yl)#endif/* * Unpack the raw bits of a native fp value.  Do not classify or * normalize the data. */

⌨️ 快捷键说明

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