Explanation of Term

2. Compiler

쿠쿠아테키 2014. 3. 21. 15:58

2. Compiler(컴파일러)


고급언어로 쓰인 프로그램을 그와 의미적으로 동등하며 컴퓨터에서 즉시 실행될 수 있는 형태의 목적 프로그램으로 바꾸어 주는 번역 프로그램.


고급언어로 쓰인 프로그램이 컴퓨터에서 수행되기 위해서는 컴퓨터가 직접 이해할 수 있는 언어로 바꾸어 주어야 한다. 이러한 일을 하는 프로그램을 컴파일러라고 한다. 예를 들어 원시언어가 *파스칼(Pascal)이나 *코볼(Cobol)과 같은 고급언어이고 목적언어가 어셈블리 언어나 기계어일 경우, 이를 번역해 주는 프로그램을 컴파일러라 한다.


컴파일을 하기 위하여 입력되는 프로그램을 원시 프로그램이라 하고 이 프로그램을 기술한 언어를 원시언어(source language)라 한다. 또 번역되어 출력되는 프로그램을 목적 프로그램이라 하고 이 프로그램을 기술한 언어를 목적언어(object language 또는 target language)라 한다. 한 프로그램을 컴파일하여 목적 프로그램으로 바꾸어 놓으면, 원시 프로그램을 수정하지 않는 한 계속 반복해서 수행할 수 있다.


어셈블러는 어셈블리 언어로 쓰여진 프로그램을 입력으로 받아 기계어 프로그램으로 바꾸어 주는 번역기이며, 어떤 번역기는 원시언어를 특수한 형태의 중간언어로 변환하는데 인터프리터는 이러한 중간언어를 입력으로 받아 목적언어로 변환하지 않고 직접 수행하는 프로그램이다.


고급언어로 쓰여진 프로그램의 의미를 수행하는데 있어서 컴파일러는 그와 동등한 의미를 갖는 목적 프로그램으로 바꾸어 목적 프로그램을 수행함으로써 결과를 얻고, 인터프리터는 원시 프로그램의 의미를 직접 수행하여 결과를 얻는다. 원시 프로그램의 수정 없이 계속 반복 수행하는 응용 시스템에서는 컴파일러가 효율적이며, 개발 시스템이나 교육용 시스템에서는 인터프리터가 더 능률적이다.






*파스칼 - 1980년대와 1990년대 초반에 걸쳐 널리 사용된 프로그래밍 언어로, 당대의 가장 인기있는 교육용 언어 중 하나였으며, 현재까지도 폭넓은 분야에서 사용되고 있다.

*코볼 - 상업 지향적 보통 언어:COmmon Business-Oriented Language. 제3세대 프로그래밍 언어이고, 가장 오래 되었으면서 지금도 쓰이는 언어의 하나이다. 상업 계산을 주로 대상으로 한 언어였다. 90년대 중반까지 한국의 대부분의 은행에서 관리하던 프로그램들은 코볼로 만들어졌다. 코볼 2002(COBOL 2002) 표준은 객체 지향 프로그래밍 지원 및 기타 현대 언어 기능을 포함하고 있다.

참조 : 위키피디아