signed와 unsigned

언어/C 2016. 5. 2. 13:31

signed unsigned는 컴퓨터 프로그램에서 수를 표기하는 자료형의 특성이다.


signed

C/C++ 프로그램 언어에서 정수형 변수 중 부호를 갖는 변수를 선언 한다. 정수형 중 음수는 2의 보수 체계를 사용하므로 이 키워드에 의해 부호를 사용할 수 있도록 변수 선언할 수 있다. 그러나 정수형의 변수에서 unsigned가 없으면 음수를 사용할 수 있는 부호를 갖는 정수형이 된다. 


unsigned

unsigned C/C++ 언어에서 사용되는 지정자로 정수형과 같이 사용되어 부호 비트를 제거해 저장 가능한 양수 범위를 두배로 늘이는 역할을 한다. char int의 signed 정수형 변수에서 MSB가 부호 비트이다. 1이면 음수이고 0이면 양수이다. 그러나 unsigned을 사용하면 음수를 사용하지 않겠다는 의미 이므로 부호 비트가 필요 없다. 따라서 이진수와 같은 십진수가 된다.


unsigned char

8비트 정수형 변수 선언 char와 결합하여 선언하면 부호 비트가 필요 없으므로 0~255 범위를 갖는다.

10진수    2진수

255        1111 1111

254        1111 1110

253        1111 1101


출처 : 위키백과

'언어 > C' 카테고리의 다른 글

함수 포인터 컴파일 오류  (0) 2016.09.26
전처리문  (0) 2016.05.02
typedef  (0) 2016.05.02
static 변수  (0) 2016.03.21
메모리 관리와 메모리의 동적 할당  (0) 2016.03.20
Posted by 知彼知己百戰不殆
,