1. C언어란
(1) 명령어 체계
CPU가 사용하는 기계적 언어체계로, 그 언어의 집합을 '명령어 집합(Instruction Set)'이라고 한다. 과거에는 사람이 이러한 기계적 언어(명령어 집합)을 사용해서 프로그램을 만들었었다. 그러나 기계적 언어를 사용하려면 명령어 체계 뿐만아니라 cpu의 구조까지 이해해야 하기 때문에, 한 명의 프로그래머를 만드는데 오랜시간이 걸렸다. 게다가 명령어 체계로 프로그래밍을 한다는 것은 사람이 하드웨어적으로 생각해서 프로그램 코드를 만들어야 함으로 프로그램의 길이가 길어질 수 밖에 없고, 그것은 결국 프로그래밍의 난이도가 높다는 것을 의미한다.
* 명령어 체계에서 프로그래밍하는 것을 로우 레벨(low level)에서 프로그래밍 한다고 말한다.
(2) 컴파일과 컴파일러
명령어 체계의 많은 단점 때문에, 프로그래밍을 쉽고 빠르게 하기 위해서 '컴파일러'라는 것을 만들어 냈는데, 이것은 사람이 굳이 기계적 언어를 배우지 않고 어느정도 인간적인 생각으로도 프로그래밍을 가능하게 했다. 즉, 인간과 컴퓨터 사이에서 번역기가 등장한 셈이다. 마치 사용자가 운영체제를 이용하여 쉽게 컴퓨터를 할 수 있는 인터페이스를 사용할 수 있는 것과 비슷하다. 아무튼 컴파일러를 이용하여 인간적인 구성을 기계적 언어로 번역해주는 것을 컴파일이라고 하며, 그 때의 컴파일러가 알아들을 수 있는 인간적인 언어를 '프로그래밍 언어(Programming language)'라고 한다.
※ 정리
명령어 체계 : CPU가 사용하는 기계적 언어의 체계(의 집합)
컴파일러 : 프로그래밍 언어로 작성된 프로그램을 컴퓨터가 이해할 수 있도록 기계어로 번역해 주는 역활을 하는 번역기
컴파일 : 컴파일러가 기계어로 번역하는 것
프로그래밍 언어 : 사람과 컴파일러가 이해할 수 있는 약속된 형태의 언어
'컴퓨터 > C언어' 카테고리의 다른 글
4. 연산과 printf 함수 (2) (0) | 2016.12.14 |
---|---|
4. 연산과 printf 함수 (1) (0) | 2016.12.08 |
3. 주석 (0) | 2016.12.04 |
2. 프로그램의 기본 구성 (0) | 2016.12.01 |
1. C 언어란? (2) (0) | 2016.11.26 |