문제
다음 C 코드의 실행 결과를 쓰시오.
C#include <stdio.h> int main() { int m = 25; int n = 18; int op1 = m & n; int op2 = m | n; int op3 = ~m & n; printf("%d %d %d", op1, op2, op3); return 0; }
정답
16 27 2
16 27 216 27 2
해설
m=25(11001₂), n=18(10010₂). op1 = m & n: 11001 & 10010 = 10000 = 16. op2 = m | n: 11001 | 10010 = 11011 = 27. op3 = ~m & n: ~11001 = 00110 (5비트로 표현), 00110 & 10010 = 00010 = 2