Computer Science/기타 궁금증 해결
인터프리터 언어는 어떻게 기계어로 번역될까?
CSAPP을 읽다가 문득 든 궁금증이다. 인터프리터 언어는 어떻게 기계어로 번역될까? C와 같은 컴파일 언어는 아래와 같은 과정으로 기계어로 번역된다. 전처리기는 우리가 소스 코드 앞쪽에 작성한 #define과 같은 치환 행위등을 해준다. 그런 뒤 컴파일러가 어셈블리어로 이루어진 .s 파일로 만들어주고, 어셈블러는 이것을 '목적파일'로 만들어준다. 목적 파일은 이진코드 (0과 1로 이루어진 코드)로 되어있어 기계어처럼 생겼지만 이것만으로는 기계가 알아먹을 수 없다. 링커가 라이브러리와 목적 파일을 합쳐줘야 드디어 우리의 컴퓨터가 이해할 수 있는 '기계어'가 되는 것이다. 근데 이건 C언어와 같은 컴파일 언어에 해당하는 것이고, 우리가 흔히 쓰는 자바스크립트, 파이썬과 같은 인터프리터 언어들은 어떤 작업을..
2022. 4. 27. 00:08
최근댓글