본문 바로가기
컴퓨터공학

4. 소스코드와 명령어

by 이면지91 2024. 9. 30.

고급 언어와 저급 언어 

 

개발자가 작성한 소스 코드

#include <stdio.h>

int main() {
  printf("Hello, world!");
  return o;
}

 

컴퓨터는 이러한 소스코드를 바로 직독직해하지 못한다.

 

 

C, C++, Java, Python 같은 프로그래밍 언어들은 개발자가 읽고 쓰기 편하게 만들어낸 언어로 '고급 언어'라고 한다.

 

고급 언어로 작성된 소스 코드가 컴퓨터 내부에서 실행될 때는 컴퓨터가 이해하고 실행하는 언어로 변환이 되어 실행한다.

 

이를 '저급 언어'라고 한다. 저급 언어는 기계어와 어셈블리어로 나뉜다.

 

기계어는 이진수 또는 십육진수 표현되며 컴퓨터가 이해할 수 있는 명령어로 이루어진 언어다.

위키백과

허나 이거는 컴퓨터가 이해하기 쉽게 만들어진 언어이기 때문에 이 기계어를 사람들이 읽기 편한 형태로 번역한 언어가 어셈블리어다.

 

위키백과

 

컴파일 언어와 인터프리트 언어

프로그래밍 언어인 고급 언어가 저급 언어로 변환되는 과정에는 크게 두 가지 방식이 있다.

 

 

  • 컴파일 언어
    컴파일 언어로 작성된 소스 코드는 컴파일러에 의해 저급 언어로 변환되고 이 과정을 컴파일이라고 한다.
    컴파일 결과로 저급 언어인 목적 코드가 생성된다.

 

  • 인터프리터 언어
    인터프리터에 의해 한 줄씩 실행된다. 소스 코드 전체가 저급 언어로 변환되기까지 기다릴 필요가 없다.
    해외서적 번역작업에 비유하면 컴파일 방식은 책 전체를 번역해서 주는 방법이고 인터프리터 방식은 번역과정을 실시간으로 보여주는 방법이다.
  • 컴파일 인터프리트 과정 살펴보기
    https://godbolt.org/

마지막으로 세상 모든 프로그래밍 언어는 컴파일 언어 인터프리트 언어로 칼로 자르듯 구분되지는 않는다.