개발 #C #비트 #비트연산 (1) 썸네일형 리스트형 특정 위치의 비트를 끄기 이번에는 임의의 정수 n 에서, k번째 비트만 바꿔버리는 방법에 대해 알아보겠습니다. 이때 k번째 비트는 2진수 n의 맨 뒤에서부터 세는 점에 유의해주시기 바랍니다. 예를 들어, n= 93 에서 k = 4 번째 비트만 0으로 바꾸는 경우를 살펴보자. n을 이진수로 나타내면 1011101이다. 1 0 1 1 1 0 1 n에 적용할 비트마스크를 mask라고 하자. mask는 1을 왼쪽으로 3( = k - 1)회 shift한 수 이고, 아래와 같다. 0 0 0 1 0 0 0 n과 mask 끼리 xor 연산을 하면, k번째 비트만 1에서 0으로 바뀐 것을 알 수 있다. 1 0 1 0 1 0 1 비트를 1에서0으로 끄는 것 대신, 그 반대의 경우를 생각해보자. n = 85 에서, 2번째 비트(k = 2)를 0에서.. 이전 1 다음