전처리기 ==> 컴파일러 ==> 어셈블러 ==> 링커



전처리기

‘#include’, ‘#define’과 같이 #으로 시작하는 지시자의 지시에 따라 소스코드를 적절히 변경한다.

컴파일러

소스코드를 어셈블리 코드로 번역한다.

어셈블러

어셈블리 코드를 0과 1로 이루어진 바이너리 코드로 번역한다.

목적(object) 파일을 생성한다.

링커

프로그램 내에서 참조하는 함수나 라이브러리들을 하나로 묶거나 연결시킨다.

이 작업이 끝나면 실행파일이 생성된다.

실행파일은 바이너리 코드로 구성된다.

빌드

컴파일 + 링크 과정

소스 코드 파일을 실행할 수 있는 독립 소프트웨어 가공물로 변환하는 과정, 혹은 그 결과물

실행 단계

  1. Fetch: 메모리상 존재하는 명령어를 CPU로 가져오는 작업
  2. Decode: 가져다 놓은 명령어를 CPU가 해석하는 단계
  3. Execution: 해석된 명령어의 명령대로 CPU가 실행하는 단계

태그:

카테고리:

업데이트:

댓글남기기