private static int CountTrailingZeros (uint val)
{
if ((val & 0xffff) == 0)
if ((val & 0xffffff) == 0)
if ((val & 0xfffffff) == 0)
return 7;
else
return 6;
else if ((val & 0xfffff) == 0)
return 5;
else
return 4;
else if ((val & 0xff) == 0)
if ((val & 0xfff) == 0)
return 3;
else
return 2;
else if ((val & 0xf) == 0)
return 1;
else
return 0;
}