Jveloper

컴파일러와 인터프리터의 차이 본문

끄적끄적

컴파일러와 인터프리터의 차이

Jveloper 2019. 4. 21. 17:04

컴파일러

고급언어로 쓰여진 프로그램이 컴퓨터에서 수행되기 위해서는 컴퓨터가 직접 이해할 수 있는 언어로 바꾸어 주어야한다. 이러한 일을 하는 프로그램을 컴파일러라고 한다. 번역과 실행 과정을 거쳐야 하기 때문에 번역 과정이 번거롭고 번역 시간이 오래 걸리지만, 한번 번역한 후에는 다시 번역하지 않으므로 실행 속도가 빠르다.

 

인터프리터

소스 프로그램을 한번에 기계어로 변환시키는 컴파일러와는 달리 프로그램을 한 단계씩 기계어로 해석하여 실행하는 ‘언어처리 프로그램’ 이다. 줄 단위로 번역, 실행되기 때문에 시분할 시스템에 유용하며 원시 프로그램의 변화에 대한 반응이 빠르다. 한 단계씩 테스트와 수정을 하면서 진행시켜 나가는 대화형 언어에 적합하지만, 실행 시간이 길어 속도가 늦다는 단점이 있다. 프로그램이 직접 실행되므로 목적 프로그램이 생성되지 않는다.

 

컴파일러와 인터프리터의 차이점

                                                                        컴파일러                                                      인터프리터

번역단위 전체 한줄씩
실행속도 빠름 느림
번역속도 느림 빠름
목적 프로그램 생성함 생성하지않음
메모리 할당 목적프로그램 생성시 사용 사용 안함

 

Comments