학습 내용 : 컴퓨터가 이해할 수 있는 비트에 대하여 알아보고, 2진수, 16진수의 개념을 이해합니다.

 

소스 코드 :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
 
void main()
{
    unsigned char ch = 255, mask = 0x7F;
 
    printf("%d\n", ch);                    // 255
    printf("%d\n", ch & mask);            // 127
    printf("%d\n", (char)~ch);            // 0
    printf("%d\n", ch ^ ch);            // 0
    printf("%d\n", ch >> 1);            // 127
    printf("%d\n", mask << 1);            // 254
 
 
    //-----------------------------------------
    // ch를            2진수로 표현하면        1111 1111
    // mask를        2진수로 표현하면        0111 1111
    // &는 논리곱으로 모두 1이어야 1 ->   0111 1111
    // ~는 반전으로    ch를 반전하면         0000 0000
    // ^는 서로 다른 경우만 1    ch^ch ->  0000 0000
    // >> x는 x만큼 >>방향으로 옮김        0111 1111
    // << x는 x만큼 <<방향으로 옮김        1111 1110
}

 

 

실행 화면 :