[C언어] Compiler

J·2022년 1월 24일

C언어

목록 보기
1/1

Compiler

Compiler는 특정 프로그래밍 언어로 쓰여 있는 문서를 다른 프로그래밍 언어로 옮기는 언어 번역 프로그램을 말한다. 컴파일러는 high-level programming language를 실행 프로그램을 만들기 위한 lower level language(ex : 어셈블리 언어, object 코드, machine code)로 바꾸는 데 사용된다.

C언어 컴파일의 경우 *cc(ex : gcc)와 같은 명령어를 사용하여 컴파일하는 경우가 많다. 이러한 명령어는 전처리기와 컴파일러와 로더를 차례로 수행시킨다.
1. 전처리기는 원본 코드에 있는 전처리기 명령어에 따라서 적절히 변경된 원본코드의 복사본을 만들어내는데 이를 번역단위라고 한다.
2. 컴파일러는 이러한 번역단위를 기계어로 변역하여 목적코드를 생성해 낸다.
3. 로더는 이렇게 해서 생긴 목적코드와 시스템에서 주어진 다양한 라이브러리를 연결하여 실행 가능한 파일을 생성해낸다.

문법오류는 컴파일러가 발견하지만, 실행오류는 오로지 프로그램 실행과정에서만 확인할 수 있다.

출처

  1. 위키백과 컴파일러, https://ko.wikipedia.org/wiki/%EC%BB%B4%ED%8C%8C%EC%9D%BC%EB%9F%AC

  2. The ESSENTIALS OF C PROGRAMMING (C 프로그래밍 언어 분석적 접근 방법), 2004, 한티미디어, Al Kelly, Ira Pohl

profile
I'm interested in processing video&images with deeplearning and solving problem in our lives.

0개의 댓글