bitcnt(var)
int var;
/*
** Count the number of 1's in the integer var. As long
** as left shift is zero fill this routine is machine
** independent.
*/
{
register int i, j, ret;
j = var;
for (ret = 0, i = 1; i; i <<= 1)
if (i & j)
ret++;
return (ret);
}