|
言葉で説明するのが苦手なので、プログラムを書いてみました。
参考にしてください。
#include <stdio.h>
int main(void)
{
unsigned int x = 36; //00100100
int count1 = 0;
int count2 = 0;
int i;
for(i = 0; i < 8; i++)
{
if((x >> i & 1) == 0)
count1++;
else
break;
}
for(i = 0; i < 8; i++)
{
if((x << i & 128) == 0)
count2++;
else
break;
}
count1 = 8 - count1 - count2;
printf("%d\n", count1);
return(0);
}
|