-
[C++] 비트 연산, Bitwise ( 10진수를 2진수로 변환)Programming/c++ 2022. 12. 13. 19:43728x90
비트 연산을 이용해서 쉽게 10진수를 2진수로 변환할 수 있다.
int main(){ int num = 52; for(int i = 7; i>= 0; i--){ //2진수 표현 자릿수, 자릿수는 늘려도 된다. int result = num >> i & 1; printf_s("%d", result); //00110100 } return 0; }
( num >> i ) : i 자릿수 만큼 오른쪽으로 shift 연산을 실행한다.
( i & 1 ) : 2^0 자릿수를 추출하기 위한 AND연산이다.
52(10진수) 를 2진수로 변환하면 00110100(2진수) 로 변환된다.
곱하기, 나머지 계산을 이용해서 비트 연산을 하지 않아도 위의 비트 연산을 이용하면 더 간단하게 식을 구현할 수 있다.
728x90'Programming > c++' 카테고리의 다른 글
[c++] std::partition_point (0) 2022.12.26 [c++] std::stable_partition (0) 2022.12.24 [VSCode] c++17 설정 (0) 2022.12.03 [c++] Stable_sort() vs Sort() 함수 차이 (0) 2022.11.24 [c++] prev_permutation, next_permutation (0) 2022.09.28