프로그래밍 단계

2015. 1. 17. 13:51 - 루하스




프로그래밍을 과정으로 나누어 보면 크게 3가지 과정으로 나누어 볼 수 있다.


  • 코딩 단계
  • 컴파일 단계(소파일→...→목적파일)
  • 링킹 단계(목적파일→실행파일)


코딩단계란 말 그대로 코딩(프로그램 언어를 이용하여 작성)을 하여 소스파일을 만드는 것이며, 

컴파일 단계는 소스파일을 컴파일러가 목적파일들로 변환시키는 과정이다. 

마지막으로 링킹 단계로 목적파일들을 링커가 연결하여 일반 사용자가 사용하는 .exe프로그램으로 변환된다.





목적파일이란 무엇인가? 

목적파일이란 기계어로 이루어진 소스이다. 

기계어는 컴퓨터가 이해 할 수 있는 언어라는 뜻으로 0과1이 난무한다. ex)010100001101001110110111...

하지만 여러개의 목적파일(건출재료처럼)로 나뉘어져 있기에 이걸을 합쳐(링킹단계) 프로그램을 만들게 된다.



왜 목적파일이 필요한가?

결론만 먼저 말하자면 속도생산성을 위해서이다.


만약 목적 파일없이 간단한 프로그램을 만들때면 문제 없지만 프로그램이 커질수록 프로그램을 만들때 마다 오래 걸리게 된다.

반대로 미리 목적파일로 만들어 둔 후 수정된 소스만 수정한다면 시간이 절약된다.

뿐만 아니라 다른 프로그램의 기능을 추가 할대 미리 만들어 둔 소스를 참조할때도 미리 목적파일이 만들어져 있으면 편리하다.



목적파일이 만들어 지는 과정은?

전처리 과정 : 전처리 지시어를 C언어 소스코드로 변환시킨다.

컴파일 과정 : C언어 소스코드를 어셈블리어로 변환시킨다.

어셈블 과정 : 어셈블리어로 된 코드를 기계어로 변환시킨다.


하지만 요즘은 컴파일과 링킹을 동시에 하는 에디터 프로그램(IDE[각주:1])들이 많아져 입문하기에는 모든기능이 내장된 IDE를 통해 공부하는 것을 추천한다.



  1. 통합 개발 환경(統合開発環境, Integrated Development Environment, IDE)은 코딩, 디버그, 컴파일, 배포 등 프로그램 개발에 관련된 모든 작업을 하나의 프로그램 안에서 처리하는 환경을 제공하는 소프트웨어 출처: 위키피디아 [본문으로]

'프로그래밍 > C언어' 카테고리의 다른 글

C언어의 기본 구조  (0) 2015.01.17
C언어의 역사  (0) 2015.01.17
18. 구조체, 공용체, 열거형  (0) 2014.04.28
17. 포인터  (0) 2014.04.26
16. 배열  (0) 2014.04.21

다른 카테고리의 글 목록

프로그래밍/C언어 카테고리의 포스트를 톺아봅니다