비트비교
글쓴이: idrukawa / 작성시간: 화, 2011/10/04 - 4:49오후
10000비트를 비교하려고 합니다.
char ori[1250];
이 ori는 총 10000비트로 이루어져 있을텐데요.
이 10000비트를 0인지 1인지 비교하려고 하는데 방법이 안떠올라서요
for(int i = 0 ; i < 10000 ; i++)
{
iCurrentBit = p10000Bit & (1 << i);
printf("%dth bit: %d\n", i, iCurrentBit);
// printf("%d", i, iCurrentBit);
}
이렇게 하니깐 컴파일도 안되요 ㅠ
도와주세요
Forums:
for( int i = 0; i < 1250; i++
for( int i = 0; i < 1250; i++ )
{
if ( ori[ i ] == 0x00 ) continue;
for( int j = 0; j < 8; j++ )
if ( ( ori[ i ] & ( 1 << j ) ) > 0 )
printf("%dth bit is 1 ", ( i * 8 ) + j )
}
이런식 아니면... 인라인 어셈중 bsf 사용하셔두 되구요..
http://lxr.linux.no/linux+v3.0.4/include/linux/bitmap.h
http://lxr.linux.no/linux+v3.0.4/lib/bitmap.c
이거 참고하셔서 Bitmap 하셔두 될듯싶어요..
-----------------------------------------------------
세상은 인간이 해결해야할 문제들로 가득차 있다.
댓글 달기