컴파일러 과정
=====> 컴파일 프로세스 <======
|
|----> 소스 파일(.c)
|
V
+=================+
| |
| C 전처리기 |
| |
+=================+
|
| ---> Pure C file ( comd:cc -E <file.name> )
|
V
+=================+
| |
| Lexical Analyzer|
| |
+-----------------+
| |
| Syntax Analyzer |
| |
+-----------------+
| |
| Semantic Analyze|
| |
+-----------------+
| |
| Pre Optimization|
| |
+-----------------+
| |
| Code generation |
| |
+-----------------+
| |
| Post Optimize |
| |
+=================+
|
|---> 어셈블리코드 (comd: cc -S <file.name> )
|
V
+=================+
| |
| 어셈블러 |
| |
+=================+
|
|---> 목적 파일 (.obj) (comd: cc -c <file.name>)
|
V
+=================+
| 링커 |
| 그리고 |
| 로더 |
+=================+
|
|---> Executable (.Exe/a.out) (com:cc <file.name> )
|
V
실행파일 (a.out)