[an error occurred while processing this directive]
|
Word16 Sqrt_lbc( Word32 Num )
{
int i ;Word16 Rez = (Word16) 0 ;
Word16 Exp = (Word16) 0x4000 ;Word32 Acc ;
for ( i = 0 ; i < 14 ; i ++ ) {
Acc = L_mult( add(Rez, Exp), add(Rez, Exp) ) ;
if ( Num >= Acc )
Rez = add( Rez, Exp ) ;Exp = shr( Exp, (Word16) 1 ) ;
}
return Rez ;
}
E-mail: info@telesys.ru