본문으로 건너뛰기

컴파일러와 인터프리터

컴파일 과정

  1. 소스코드 작성 및 컴파일: 소스코드 작성하여 컴파일하면 목적코드가 만들어진다.
  2. 목적 코드와 라이브러리 연결: 목적 코드가 만들어지면 라이브러리에 있는 코드를 목적 코드에 삽입하여 최종 실행 파일을 만든다.
  3. 동적 라이브러리를 포함하여 최종 실행: 오늘날의 프로그래밍에서는 예를들어 printf 코드를 가져올 때 printf문의 자리를 비워놓고 컴파일 한 후 실행할 때 printf문의 실행코드를 라이브러리에서 가져와 실행하는 방법을 사용한다. 이렇게 실행할 때 삽입되는 함수를 가진 라이브러리를 동적 라이브러리(dynamic library)라고 한다.

차이

컴파일러를 사용하는 프로그래밍 언어는 사용할 변수를 먼저 선언한 후 코드를 작성한다. 컴파일러는 실행 전에 소스코드를 점검하여 오류를 수정하고 필요 없는 부분을 정리하여 최적화된 실행파일을 만든다. 그러나 인터프리터는 한 줄씩 위에서부터 아래로 실행되기 때문에 같은 일을 반복하는 경우나 필요없는 변수를 확인할 수 없다. 따라서 크고 복잡한 프로그램에서는 컴파일러를 사용하고 간단한 프로그램에서는 인터프리터를 사용한다.

Reference

  • 쉽게 배우는 운영체제