컴파일러
입력: High level로 작성된 소스 프로그램
|
|
컴파일러(Translator)
Front End--------------------------------------Back End
| <-Intermediate Code-> |
HL과 관련된 작업 | Target Code와 관련된 작업
|
|-------------------------(input)------>Interpreter---->result
|
|
출력: (Low Level Language)Target Code
*High level은 사람에게 가까운, Low level은 머신에게 가까운
아키텍처는 너무나도 다양하기 때문에 Front End/Back End의 역할이 중요하다
Front End(LA,SA, ICG<-semantic analysis)
Back End(CO,TCG,CO-타겟 머신에 특화된 code optimizer)