高效求解平方根的倒数的函数实现

来源:互联网 发布:qq三国js技能介绍 编辑:程序博客网 时间:2024/05/01 04:08

/*** float q_rsqrt( float number )*/float q_rsqrt( float number ){long i;float x2, y;const float threehalfs = 1.5F;x2 = number * 0.5F;y  = number;i  = * ( long * ) &y;// evil floating point bit level hackingi  = 0x5f3759df - ( i >> 1 );               // what the fuck?y  = * ( float * ) &i;y  = y * ( threehalfs - ( x2 * y * y ) );   // 1st iteration//y  = y * ( threehalfs - ( x2 * y * y ) );   // 2nd iteration, this can be removed#ifdef __linux__assert( !isnan(y) ); // bk010122 - FPE?#endifreturn y;}

0 0
原创粉丝点击