티스토리 뷰
반응형
개발자의 C언어 독학 기초 # 기본 연산
모든 강의 자료 : www.codingnow.co.kr/
이번 강의는 기본 연산의 종류 및 설명을 한다.
연산이라고 하면 수학이 생각나서 어렵다고 할 수있으나 CPU가 계산해 주는 것이라 어려울게 없다.ㅋ
연산에는 우리가 흔히 배우고 있는 산술연산의 종류는 다음과 같다.
+(더하기), -(빼기), /(나누기),
*(곱하기), %(잉여값: 나누고 남은 값)
다음은 더하기 예제이다.
더하기 하나를 네가지로 표현하지만 모두 같은 값을 갖는다.
결과값은 "1" 더해진다.:
a = a+1;
a += 1;
a ++; //후처리 연산
++a; //전처리 연산
산술연산의 사용법에서 기본 수학과 형태가 다른것 빼고는 유사하기 때문에 처음에만 그렇지 익숙해지면 어려움은 없다.
비트연산은 2진 법의 각 비트를 가지고 연산하는 방식으로 처음 프로그래밍 언어를 공부할때 낯설어 어려워하지만 조금만 접하다 보면 쉬워지게 된다.
비트 연산에는 or(|), and(&), xor(^),
반전 (~), 왼쪽 쉬프트(<< ),
오른쪽 쉬프트(>>) 등이 있다.
예를 들어 "unsigned char" 로 선언되면 8bit의 변수가 선언이 된다.
unsigned char a = 2;//(2진수로 0000 0010)
unsigned char b = 4;//(2진수로 0000 0100)
라고 할때
unsigned char c;
1. c = a | b; // 한 비트라도 1이면 1
0000 0010
0000 0100
------------------
0000 0110 = 0x06 = 6
2. c = a & b;// 두 비트가 1이면 1
0000 0010
0000 0100
------------------
0000 0000 = 0x00 = 0
3. c = a ^ b;//두 비트가 다르면 1
0000 0010
0000 0100
------------------
0000 0110 = 0x06 = 6
4. c = (~a);// 비트 반대로
0000 0010
------------------
1111 1101 = 0xFD = 253
5. c = (a<<1);// 비트 왼쪽으로 수만 큼 이동
0000 0010
------------------
0000 0100 = 0x04 = 4
6. c = (a>>1);// 비트 오른쪽으로 수만 큼 이동
0000 0010
------------------
0000 0001 = 0x01 = 1
모든 연산은 CPU가 하는 것으로 그 원리를 깨닫고 있으면 된다.
즉 기초 단계에서는 연산을 계속적을 접하여 익숙해지는 연습을 하는 것이 좋다.
경력자들이 연산자를 어떻게 사용하고 있는지 등을 소스 코드로 접하는 것이 많은 도움이 된다.
반응형
'C언어 강의' 카테고리의 다른 글
개발자의 C언어 독학 기초 # 함수 (0) | 2020.04.14 |
---|---|
개발자의 C언어 독학 기초 # 포인터 (0) | 2020.04.13 |
개발자의 C언어 독학 기초 # 다중 배열의 기초 (0) | 2020.04.10 |
개발자의 C언어 독학 기초 # 배열의 기초 (0) | 2020.04.10 |
개발자의 C언어 독학 기초 명령 # switch 설명 (0) | 2020.04.10 |