회신: 24.4 비트연산자 예제.
, 도장_ 관리자님이 작성Unit 24.4를 보면
https://dojang.io/mod/page/view.php?id=184
flag |= 1; // 0000 0001 마스크와 비트 OR로 여덟 번째 비트를 켬 flag |= 2; // 0000 0010 마스크와 비트 OR로 일곱 번째 비트를 켬 flag |= 4; // 0000 0100 마스크와 비트 OR로 여섯 번째 비트를 켬 printf("%u\n", flag); // 7: 0000 0111OR 연산자는 비트를 켜는 역할을 합니다.
0001
0010
0100
------
0111
3개 모두 OR 연산자가 디므로 결과는 0111이 됩니다. 2진수 이므로 끝 자리수부터 계산합니다.(2진법을 10진법으로 변환)
0001 = 1 * 2^0 = 1
0010 = 1 * 2^1 = 2
0100 = 1 * 2^2 = 4
따라서 4 + 2 + 1 = 7이 됩니다.
진법 변환은 중학 수학 이상이면 교과 과정에 포함되어 있습니다.
유튜브 강의 참고: 중1상 십진법과 이진법
C 언어 코딩 도장에서는 Unit 36에서 C 언어로 10진수를 2진수로, 2진수를 10진수로 변환하는 법을 설명합니다.
중학 수학을 배우기 전이거나 진법 변환을 배우기 전이라면 웹페이지
를 참조해서 변환하면 됩니다.