AVR/Atmega128 강좌
비트와이즈(bitwise) 연산 예제
webnautes
2015. 2. 11. 12:06
반응형
- #include <stdio.h>
- #include <math.h>
- void printBinary( unsigned char v )
- {
- int i;
- for( i=7; i>=0; i-- )
- {
- if ( (v&(1<<i)) )
- printf( "1" );
- else
- printf( "0" );
- }
- printf("\n");
- }
- int main()
- {
- int i;
- for( i=0; i<8; i++)
- {
- printf( "1<<%d ", i );
- printBinary( 1<<i );
- }
- printf( "\n");
- for( i=0; i<8; i++ )
- {
- printf( "1>>%d ", i );
- printBinary( 0x80>>i );
- }
- printf("\n특정비트 1로 세팅하기\n");
- unsigned char v=0;
- printBinary(v);
- printBinary( v|(1<<5) );
- printf("\n특정비트 0으로 클리어하기\n");
- v = 0xFF;
- printBinary(v);
- printBinary( v&~(1<<5));
- return 0;
- }
반응형