Home Compiler
Post
Cancel

Compiler

먼저 컴파일러의 목적은 다음과 같다.

img

먼저, 언어는 다음 3가지로 분류할 수 있다.

  • machine language : 컴퓨터가 직접 실행 할 수 있는 프로그램

  • assembly language : 기계어 프로그램에서 명령과 메모리주소를 심볼 형태로 표시(특정 기계에 종속)
  • high level language : 기계와 독립적, 간결하고 자연어와 유사

컴파일러의 목적은 high level language를 machine language로 번역하는것이다.

컴파일러와 관련된 프로그램은 아래와 같다.

  • Interpreter : 즉시 소스코드를 실행, 컴파일된 코드보다 110배이상 느림

  • Assembler : 어셈블리어를 기계어로 바꿈

  • Linker : 컴파일된 코드들을 실행가능한 파일로 묶어줌

  • Loader : 코드를 메모리에 올려줌(base adddress 기준의 상대주소로 모두 재배치)

  • Preprocessor : 실제 translation 이전에 compiler에 의해 호출(주석 삭제, 외부 파일 include,macro substitution 진행)

  • Profiler : 실행에 관한 통계치들을 수집

아래는 관련된 프로그램과 컴파일러의 흐름도이다.
img

This post is licensed under CC BY 4.0 by the author.

화이트 박스와 블랙 박스 테스트의 정의와 차이점

Translation Process

Comments powered by Disqus.

Trending Tags