find position of most significant bit ?
Karl Hasselström
kha@treskal.com
Wed, 27 Nov 2002 19:18:37 +0100
On 2002-11-27 11:22:00 -0500, delta trinity wrote:
>
> Then, I guess the fastest way to check, if you have a x86 class processor,
> is to use the 'bsr' assembly instruction (bit scan reverse):
>
> (Assuming you've put the A->_mp_d[ABS(A->_mp_size)] value into edx. You
> could also use a memory refference)
>
> bsr eax,edx
>
> Then, eax contain index of most significant bit.
Use the count_leading_zeros macro. It is defined in terms of some
inline assembly something for lots of processors. It seems to use the
bsrl instruction for at least some x86 variants.
--
Kalle Hasselström, kha@treskal.com
www.treskal.com/kalle