전체 소스 코드 파일을 읽고, 이를 기계어나 중간 언어로 번역한 후, 실행 가능한 바이너리 파일로 변환한다. (변환 과정은 전처리, 컴파일, 어셈블리, 링크 단계)
컴파일러에 의해 생성된 실행 파일은 컴퓨터에서 직접 실행될 수 있다.
변환된 코드는 컴퓨터의 CPU에서 직접 실행된다.
소스 코드를 한 줄씩 읽고, 각 줄을 즉시 실행 가능한 형태로 번역하고 실행한다.
전체 소스 코드를 먼저 변환하지 않고, 실행 중에 번역 및 실행이 동시에 이루어진다.
소스 코드는 직접 해석되며, 인터프리터 각 줄을 번역하여 실행한다.
소스 코드를 수정하고 즉시 실행할 수 있다.
차이점
- 실행시간
컴파일러는 소스 코드를 한번만 변환하고 실행 파일을 생성하므로 실행 시간이 빠르다.
인터프리터는 소스 코드를 실행할 때마다 번역 및 실행 과정이 반복되기 때문에 실행 시간이 더 느리다.
- 오류검출
컴파일러는 소스 코드를 컴파일하는 동안 오류 검출하며, 전체 소스 코드를 검토할 수 있다.
인터프리터는 소스 코드를 실행 중에 발생하는 오류만을 검출할 수 있다.
- 플랫폼 독립성
일부 컴파일러는 컴파일된 코드가 특정 플랫폼에 종속적일 수 있다.
인터프리터는 플랫폼이 독립적이다.~~