Explain입력된 int을 bit로 변환하여 출력해주는 코드.int 이외에도 다양한 type에 적용가능.1byte = 8bit 인점을 감안하여 반복문을 생성한뒤반복자(i)를 기준으로 mask생성 후 출력.Code #include #include typedef int TYPE; void display_bit(TYPE x); int main(void) { TYPE input; scanf("%d", &input); display_bit(input); } void display_bit(TYPE x) { int i; for (i = sizeof(x) * 8; i-- > 0;) { if (x & 1
Bit 연산자?bit 연산이란 데이터의 최소단위(bit, 0,1)의 연산을 위해 사용되는 부호들을 의미한다. 비트 연산자의 피연산자는 정수 계열 형식(int, long , uint 등)이여야 한다.개인적으로 실무에서 구현당시 직접 사용할 일은 거의 없으나 펌웨어, 각종 라이브러리 에서 사용되어지기 때문에 원리는 꼭 이해를 하고 있어야한다.연산자의 종류& ( AND 연산자 ) [AND] : 피연산자 서로의 비트를 비교하여 양쪽 모두 1인 경우에만 해당비트는 1로 설정된다.0000 1111 & 0000 1010 = 0000 1010 | ( 포괄적 OR 연산자 ) [OR] : 피연산자 서로의 비트중 한쪽이 1인경우 해당비트는 1로 설정된다.0000 1111 | 0000 1010 = 0000 1111^( 베타적..
BITMASK란?변수 혹은 수식에서 원하는 열의 비트만 변경하기위한 상수를 비트 마스크 라고 한다.주로 프로그램의 각종 flag구현에 사용된다. 여기서 말하는 flag란 특정 함수호출시 약속된 규칙을 넘기기위해서 사용되어지는 용도 라고 이해하면되며 Win32 Api, 각종 dll 등을 접해봤으면 쉽게 이해 할 수 있다.Example.사칙 연산의 프로그램이며 mode(+, - , *, /)를 flag로 셋팅 할 수있다. char PLUS = 1; //0001 char MIN = 2; // 0010 char MULTI = 4; // 0100 char DIV = 8; // 1000 void arithmetic(char flag) { int num1, num2; printf("두 수를 입력해 주세요."); sc..
Conditional Operator? (= 조건(삼항) 연산자란?) 조건에 따라 두 식 중 하나를 반환하는 연산자.exp1 ? exp2 : exp3 의 형식으로 구성되며 exp1(boolean)이 true 면 좌항(exp2), false 이면 우항(exp3)가 호출되는 형식이다.개인적으로는 실제 개발 업무시 특정 변수에 값을 넣을 때만 사용한다.함수 호출 용도로 사용하는것도 가능하나 코드의 가독성이 떨어진다고 생각하기 때문에 함수 호출시에는 if, else 문으로 구현한다. Example 1. Call Method두 수를 입력받은 뒤 큰 수를 작은 수로 나눈 몫과 나머지를 출력하는 프로그램 void division(int big, int small) { printf("몫: %d, 나머지: %d\n", ..
- Total
- Today
- Yesterday
- syntax highlighting
- 비트
- C
- Android
- Highlighter
- Bit
- mysql
- mathjax
- 도메인
- 알고리즘
- algorithm
- Math
- DNS
- 삼항연산자
- robocopy
- 비트마스크
- python
- highlightjs
- Matrix
- 행렬
- Kotlin
- 안드로이드
- 수식
- 비트연산자
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |