[C 언어 기초] 5. 고급 레벨 언어와 컴파일러
고급 레벨 언어와 컴파일러
C와 같은 고수준의 언어는 여러 가지 방법으로 프로그램을 단순화시켰습니다.
1. 명령을 수치 코드로 나타낼 필요가 없습니다.
2. 사용하는 명령들이 사람들이 사용하는 언어에 더 가깝습니다.
CPU에 명령을 내릴 때 위와 같은 절차를 신경 쓸 필요 없이 추상적인 수준에서 원하는 것을 표현할 수 있습니다. 예를 들면, 두 수를 더하는 것을 다음과 같이 표현할 수 있습니다.
total = num1 + num2; | cs |
이와 같은 코드는 어떤 일을 하는지 쉽게 예측할 수 있습니다. 하지만, 수치 코드로 적힌 기계어 코드는 무슨 일을 하는 코드인지 이해하기가 쉽지 않습니다.
하지만, 컴퓨터는 위와 같은 명령을 이해할 수 없습니다. 이것을 해결하기 위해 사용되는 것이 컴파일러(compiler)인데, 컴파일러는 고수준의 언어로 작성된 프로그램을 컴퓨터가 이해할 수 있는 기계어 명령으로 변환해주는 프로그램입니다. 컴파일러가 있어서 우리는 기계어 코드로 컴퓨터에 명령을 내리지 않아도 됩니다.
이렇게 컴파일러를 중간에 사용해서 번역해주는 방법은 또 다른 이점이 있습니다. 일반적으로, CPU의 종류가 다를 경우 서로 다른 기계어 명령을 사용해서 각각의 CPU마다 서로 다른 기계어 코드로 작성해야 합니다. 하지만, 컴파일러를 이용하면 각각의 기계어에 맞춰져서 컴파일하므로 프로그램을 작성할 때 고수준으로 한 번만 작성하면 컴파일러를 이용해서 다양한 버전의 기계어 프로그램을 얻을 수 있습니다.
컴파일러를 사용해서 얻는 이점
1. 기계어보다 배우기 쉽다.
2. 특정 CPU나 기계어 명령에 한정되지 않는다.
3. 기계어를 이용해서 프로그램을 작성하는 것보다 훨씬 효율적이다.
정리하면 C, C++, Java와 같은 고급 레벨의 언어는 추상적인 형태로 동작을 서술하므로 특정 CPU나 명령 집합에 제한되지 않으며, 기계어보다 배우기가 쉽고 사용하기도 훨씬 쉽다는 장점이 있습니다.
'Guide > C Language' 카테고리의 다른 글
[C 언어 기초] 7. C를 활용하는 일곱 단계 (0) | 2016.12.25 |
---|---|
[C 언어 기초] 6. C 언어 표준 (0) | 2016.12.24 |
[C 언어 기초] 4. 컴퓨터의 동작 방법 (0) | 2016.12.22 |
[C 언어 기초] 3. C 언어의 미래 (1) | 2016.12.21 |
[C 언어 기초] 2. C 언어가 인기 있는 이유 (1) | 2016.12.20 |
댓글
이 글 공유하기
다른 글
-
[C 언어 기초] 7. C를 활용하는 일곱 단계
[C 언어 기초] 7. C를 활용하는 일곱 단계
2016.12.25 -
[C 언어 기초] 6. C 언어 표준
[C 언어 기초] 6. C 언어 표준
2016.12.24 -
[C 언어 기초] 4. 컴퓨터의 동작 방법
[C 언어 기초] 4. 컴퓨터의 동작 방법
2016.12.22 -
[C 언어 기초] 3. C 언어의 미래
[C 언어 기초] 3. C 언어의 미래
2016.12.21