컴파일러와 인터프리터에 대해 알아보자.
컴파일러와 인터프리터는 모두 고급 언어(java, c언어 등)를 PC가 읽을 수 있는 언어(2진법)로 변환하는 장치이다.
인터프리터와 컴파일러의 차이를 보면,
컴파일러와 인터프리터의 가장 큰 차이점은 해석을 한번에 하느냐 아니면 실행과 동시에 부분적으로 해석을 하느냐 이다.
- 컴파일러는 프로그램 전체를 한번에 기계어로 편집하는 것을 말하고,
- 인터프리터는 작성한 프로그램을 한 줄씩 번역하면서 실행하는 것이다.
컴파일러 | 인터프리터 | |
---|---|---|
번역단위 | 전체 | 한줄씩 |
실행속도 | 상대적으로 빠름 => 실행파일이 생성되어 다음에 실행할 때는 이 파일만 실행하면 되기 때문에 실행 시간이 비교적 빠르다. | 상대적으로 느림 => 한 줄씩 번역을 하기 때문에 번역시간은 빠르지만 실행 시간은 비교적 느리다. |
번역속도 | 상대적으로 느림 | 상대적으로 빠름 |
실행 파일 생성유무 | 생성 | 생성 안함 |
메모리 할당 | 할당 받음 | 사용 안함 |