본문 바로가기

아스키코드2

아스키코드(ASCII Code) - 컴퓨터의 문자 처리 원리 컴퓨터가 이해하는 언어는 0과 1(1bit)이다. 2진수로 데이터를 처리한다.컴퓨터는 전기신호를 받아들이므로 전기의 OFF, ON 두 가지 상태(0과 1)로 모든 걸 표현하기 때문이다.0과 1의 두 가지 상태를 나타내는 단위를 bit라고 한다. 더보기전자식 컴퓨터가 나오기 전에 기계식 컴퓨터가 있었으나 결국 속도 때문에 전자식 컴퓨터를 사용한다.컴퓨터는 '전기가 흐른다' / '흐르지 않는다' 이 두 가지 상태만 가지므로 2진법을 사용한다.인간이 10진법을 사용하는 이유도 간단하게 손가락이 10개이니 셈하기 용이하기 위해서다. 그러나 1bit만으로는 표현할 수 있는 게 0, 1 단 두 개뿐이니, 더 큰 수를 표현하기 위해 8개의 bit를 묶어서 1byte를 사용한다. 컴퓨터가 데이터를 저장하는 최소 단위가.. 2020. 10. 7.
[C언어] NULL, 0, NUL, '\0', undefined의 차이 malloc(), bzero() 등의 C언어 내장함수를 공부하면서 NULL, 0, NUL, '\0'을 접하게 된다. 공통점과 차이점을 정확하게 정리하고자 한다. 우선 NULL과 NUL은 구분되며, 비교항목을 NULL, 0 과 NUL, '\0' 과 undefined 로 나눌 수 있다. NULL, 0 비교 NULL은 널 포인터로서, (void *)0을 가리킨다. NULL 매크로는 , 등 여러 헤더파일에서 이미 정의돼있다. C언어에서 pointer와 정수는 서로 형 변환될 수 있는데, 두 데이터 타입 모두 4byte다. Null pointer는 정수 0으로 변환될 수 있고, 정수 0은 Null pointer로 변환될 수 있다. 즉, Null pointer는 메모리 주소 0을 가르키는 pointer라는 뜻이다... 2020. 10. 6.