C언어 - 컴파일러와 링커

2020. 11. 6. 11:52카테고리 없음

고수준 언어 - 인간이 이해하기 용이한 추상화된 언어

저수준 언어 - 기계가 이해하기 위한 언어

 

i love you 

0110 1001 0010 0000 0110 1100 0110 1111 0111 0110 0110 0101 0010 0000 0111 1001 0110 1111 0111 0101

 

컴파일러 단계에선 사람에게 익숙한 고수준 언어를 컴파일 해서 컴퓨터 언어 바이너리로바꾸고 cpu에서 연산해서 output으로 우리에게 보여준다.

 

 

 

 

목적 파일 (Object Code)

컴퓨터 과학에서 목적 코드 또는 목적 파일은 컴파일러나 어셈블러가 소스 코드 파일을 컴파일 또는 어셈블해서 생성하는 파일이다. 목적 파일들은 기계어나 혹은 이에 준하는 RTL과 같은 이진 코드로 이루어져 있다

 

링커(Linker)

링커 또는 링크 에디터는 컴퓨터 과학에서 컴파일러가 만들어낸 하나 이상의 목적 파일을 가져와 이를 단일 실행 프로그램으로 병합하는 프로그램이다. OS/360과 같은 IBM 메인프레임 환경에서 이 프로그램은 링키지 에디터로 알려져 있다.

 

스타트업 코드

부팅 과정 중 첫 번째에 실행되는 코드, 말 그대로 시작할 때 필요한 사항을 적은 코드.

( main함수가 불리기 전에 실행된다.)

C코드로 프로그래밍 하기 위해서는 스택메모리 할당이 전제가 되어야한다.

 

 

 

 

 

main() 함수 안에 printf()라는 출력 함수를 쓸수 있게 됐다.

 

printf를 쓰기위해서는 #include로 라이브러리를 불러들인다.

 

무슨 라이브러리를? <stdio.h>를. 

 

std 는 standard // io는 Input Output이다.

 

 

만약 #include <studio.h>를 빼고 실행할 경우

 

아래와 같이 에러가 나게 된다.

 

c파일을 컴파일하고 obj파일이 여러개가 생길경우 링킹과정을 통해 엮은후 exe파일을 만든다.

 

 

 

 

 

 

 

 

출저 - 홍정모의 따라배우는 C언어