본문 바로가기
개념/혼자 공부하는 C언어

chapter 4) 비트 연산식의 결과

by kiseno 2024. 6. 18.
728x90
반응형
SMALL
#include <stdio.h>

int main(void){
    int a = 10, b = 12;

    printf("a &  b :%d\n", a & b);
    printf("a ^ b : %d\n", a ^ b);
    printf("a | b : %d\n", a | b);
    printf("~a : %d\n", ~a);
    printf("a <<1 : %d\n", a<<2);
    printf("a >> 2 :%d\n", a>>2);

    return 0;
}

코드 설명
1. main() 함수
   1-1. 정수형 변수 a와 b를 선언하고 각각 10과 12의 값을 할당
   1-2. 비트 AND 연산자 `&`를 사용하여 a와 b의 비트 연산을 수행하고, 그 결과를 출력. 이 연산은 두 정수의 각 비트 위치를 비교하여 둘 다 1이면 1을, 아니면 0을 반환함
   1-3. 비트 XOR 연산자 `^`를 사용하여 a와 b의 비트 연산을 수행하고, 그 결과를 출력. 이 연산은 두 정수의 각 비트가 다르면 1을, 같으면 0을 반환함
   1-4. 비트 OR 연산자 `|`를 사용하여 a와 b의 비트 연산을 수행하고, 그 결과를 출력. 이 연산은 두 정수의 각 비트 위치를 비교하여 하나라도 1이면 1을, 둘 다 0이면 0을 반환함
   1-5. 비트 NOT 연산자 `~`를 사용하여 a의 비트를 반전시키고, 그 결과를 출력. 이 연산은 정수의 모든 비트를 반전시킴 (1은 0으로, 0은 1로)
   1-6. 비트 왼쪽 시프트 연산자 `<<`를 사용하여 a의 비트를 왼쪽으로 2칸 이동시키고, 그 결과를 출력. 이 연산은 정수의 비트를 왼쪽으로 지정된 수만큼 이동시키고, 새로운 비트는 0으로 채워짐
   1-7. 비트 오른쪽 시프트 연산자 `>>`를 사용하여 a의 비트를 오른쪽으로 2칸 이동시키고, 그 결과를 출력. 이 연산은 정수의 비트를 오른쪽으로 지정된 수만큼 이동시키며, 새로운 비트는 부호 비트로 채워지거나 0으로 채워짐 (부호 있는 정수에 따라 다름)
2. 반환문 (return) 작성 -> 프로그램이 성공적으로 실행되었음을 나타내기 위해 0을 반환

728x90
반응형
LIST