keil中的一个求均方根的算法

u8 U8tmp=0;
u16 U16Tmp=0,i=0;
for(U8tmp=16; U8tmp>0; U8tmp--)
{
U16Tmp=i+(1<<(U8tmp-1));
if((U16Tmp*U16Tmp)<=x)
i+=(1<<(U8tmp-1));
//该函数主要用于计算一个无符号32位数的均方根。采用的16次逐次比较的方式得到计算结果。
我不清楚是怎么算的。

楼主你给的程序有点少啊,里面的x是什么?

楼主你给的程序有点少啊,里面的x是什么?