컴퓨터는 명령어를 처리하는 기계
명령어는 컴퓨터를 실직적으로 작동시키는 매우 중요한 정보
그렇다면 ,,, 프로그래밍 언어로 만든 소스 코드는 무엇일까요?
즉, 프로그램을 시행해도 컴퓨터는 잘 작동하게 됩니다.
결론 : 모든 소스코드는 컴퓨터 내부에서 명령어로 변환
프로그래밍 언어가 어떻게 명령어가 실행되는지 알아보자
고급 언어
컴퓨터는 C, C++ 과 같은 프로그래밍 언어를 이해할 수 없습니다. 프로그램을 만들 때 사용하는 프로그래밍 언어는 사람이 이해하기 작성하기 쉽게 만들어진 언어이다.
저급 언어
컴퓨터가 직접 잏해하고 실행할 수 있는 언어. 저급 언어는 명령어로 이루어져 있습니다. 컴퓨터가 이해하고 실행할 수 있는 언어는 오직 저급 언어뿐입니다.
고급언어로 작성된 소스 코드가 실행되려면 반드시 저급 언어, 즉 명령어로 변환되어야 합니다.
고급 언어 -> (((변환))) -> 저급 언어
저급 언어에는 두 가지 종류가 있습니다. 바로 기계어와 어셈블리어입니다.
기계어
0과 1로 명령어 비트로 이루어진 언어, 0과 1로 이루어진 명령어 모음
컴퓨터는 0과 1로 이루어진 이 기계어를 이해하고 실행합니다.
하지만, 이 기계어를 보면 어떻게 작동시키는 지 감이 잡히지 않습니다. 그래서 등장한 저급 언어가 어셈블리어 입니다.
어셈블리어
0과 1로 표현된 명령어를 읽기 편한 형태로 번역한 언어가 어셈블리어 -> 곧, 명령어임
저급 언어를 접할 일이 없는 개발자도 있지만, 임베디드 개발자, 게임 개발자 등의 개발자는 어셈블리어를 많이 이용합니다.
이러한 분야의 개발자들에겐, 어셈블리어는 '작성의 대상'일 뿐만 아니라 '관찰의 대상' 이기도 합니다. 프로그램이 어떤 절차로 작동하는지를 가장 근본적인 단계에서부터 하나하나 추적하고 관찰할 수 있습니다.
컴파일 언어와 인터프리터 언어
그렇다면, 고급 언어는 어떻게 저급 언어로 변환될까요?
여기에는 컴파일 방식과 인터프리트 방식이 있습니다.
컴파일 방식으로 작동하는 프로그래밍 언어를 컴파일 언어, 인터프리트 방식으로 작동하는 프로그래밍 언어를 인터프리터 언어 라고 합니다.
좀 더 알아 보기 목적 파일 vs 실행 파일
이미지로 이루어진 파일을 이미지 파일이라 부르고,
텍스트로 이루어진 파일을 텍스트 파일이라고 부루듯이,
목적 코드로 이루어진 파일을 목적 파일이라고 부릅니다.
마찬가지로 실행 코드로 이루어진 파일을 실행 파일이라고 부릅니다. 윈도우의 .exe 확장자를 가진 파일이 대표적인 실행 파일입니다.
목적 코드는 컴퓨터가 이해하는 저급 언어입니다.
목적 코드가 실행 파일이 되기 위해서는 링킹이라는 작업을 거쳐야 합니다.
main.o가 실행되면 main.o에 없는 외부 기능들, 즉 HELPER_더하기 기능 과 화면 출력 기능을 main.o와 연결 짓는 작업이 필요합니다. 이러한 연결 작업이 링킹 입니다. 링킹 작업까지 거치면 비로소 하나의 실행 파일이 만들어집니다.
마무리
'취준' 카테고리의 다른 글
[컴퓨터 구조] Chapter 4-1. ALU와 제어장치 (0) | 2024.04.22 |
---|---|
[컴퓨터 구조] Chapter 3-2 명령어의 구조 (0) | 2024.04.22 |
[컴퓨터구조] Chapter 02. 데이터 (1) | 2024.04.18 |
[운영체제] Chapter 01. 컴퓨터 구조 시작하기 (0) | 2024.04.17 |
[혼자 공부하는 컴퓨터구조, 운영체제] Chapter 1. 컴퓨터 구조 시작하기 (0) | 2024.04.16 |