[비트연산]대소문자 변경을 비트연산으로 해보자.


[비트연산]대소문자 변경을 비트연산으로 해보자.

대소문자 변경을 할 때 우리는 XOR연산을 통해 쉽게 할 수 있다.A^32를 해주게 되면 a가 되고 a^32해주게 되면 A가 된다.이건 매우 간단하게 설명이 가능한데, a와 A가 아스키 코드 값으로 32만큼 차이가 나기 때문이다.a 는 아스키 코드 값으로 97 A는 65 이다.둘 사이 차이는 32로 서로 32를 더하고 빼면 나오는 값이다. 비트로 보기a = 97을 8비트로 보면 0110,0001 이고 A = 65 [0100,0001] 이다.이걸 조금 더 보면 알파벳의 갯수는 26개이고, 각각을 비트로 표현하면 A = [0100,0001](65) Z =[0101,101](90)이다.a = [0110,0001](97) z = [0111,1010](122)이다.따라서 A^32가 어떤의미인가, 32를 비트로 표..


원문링크 : [비트연산]대소문자 변경을 비트연산으로 해보자.