데이터의 표현단위인 비트(Bit) 와 바이트(Byte)
비트는 컴퓨터가 표현하는 데이터의 최소단위로서 2진수 값 하나를 저장할 수 있는 메모리의 크기를 뜻하는 단위이다.
비트를 여덟개 묶으면 바이트라는 단위가 된다.
C언어는 10진수 이외에 8진수와 16진수의 데이터 표현도 허용한다.
ex)
int num1 =10; // 10진수를 이용한 초기화
int num2 = 0xA; //16진수를 이용한 초기화 ( 0x로 시작하면 16진수로 인식 )
int num3 = 012; //8진수를 이용한 초기화 ( 0로 시작하면 8진수로 인식 )
비트단위에서의 정수의 표현방식
1. 정수의 가장 왼쪽에 존재하는 비트는 '부호비트'( MSB ) 이다. ( 0이면 양수이고, 1이면 음수이다 )
2. 음의 정수를 표현할 때는 2의 보수를 취해야한다 . ( 0과 1을 서로 뒤바꾸고 마지막에 1을 더해준다 )
비트단위에서의 실수의 표현방식
+-(1.m)*2^(e-167) 실수 데이터 비트의 반은 e, 반은 m 을 정하는데 사용하는 방식으로 실수를 표현한다.
따라서, 넓은 범위의 실수를 표현할 수 있지만, 실수표현에는 반드시 오차가 존재하게된다. 이 오차를 가리켜 '부동소수점 오차' 라고한다.
비트 연산자
A & B 비트단위로 AND 연산을 한다 : A B 두개의 비트가 모두 1일때 1을 반환하는 연산
A | B 비트단위로 OR 연산을 한다 : A B 두개의 비트중 하나라도 1일때 1을 반환하는 연산
A ^ B 비트 단위로 XOR 연산을 한다 : A B 두개의 비트가 다를때 1을 반환하는 연산
~A 비트 단위로 NOT 연산을 한다 : 비트가 1이라면 0 , 0이라면 1로 반전 ( MSB 도 반전되기때문에 부호또한 바뀐다 )
A << B 비트의 왼쪽이동 : A의 비트열을 B칸씩 왼쪽으로 이동시킨 결과를 반환하는 연산
A << B 비트의 오른쪽이동 : A의 비트열을 B칸씩 오른쪽으로 이동시킨 결과를 반환하는 연산
'C언어 > 열혈C' 카테고리의 다른 글
C : Chapter -6 반복문 (0) | 2018.03.19 |
---|---|
C : Chapter -5 상수와 기본자료형 (0) | 2018.03.17 |
C : Chpater -3 변수와 연산자 (0) | 2018.03.17 |
C : Chapter -2 프로그램의 기본구성 (0) | 2018.03.17 |
C : Chapter -1 이것이 C언어다 (1) | 2018.03.17 |