코딩

챕터 1-2 : Low-Level Language와 High Level Language

story98138 2026. 2. 23. 19:19

수업 목표

  • 우리가 작성하는 소스코드가 어떻게 컴퓨터가 이해하는 언어로 변하는지 알아본다.
  • 빌드 프로세스와 컴파일러의 필요성을 알아본다.

 

목차

  • 명령서(코드)는 어떤 언어로 작성되어야 할까요?
  • 기계어(Low-level Language, Machine Language)
  • 그럼 사람도 기계어로 코드를 작성해야 할까요?
  • 어셈블리어(Assembly Language)
  • 고급 언어(High-Level Language)
  • 소스 코드(Source Code)
  • 그러나 너무 멀리 와버림
  • 빌드 프로세스(Build Process)

필수 프로그램 설치

✅ Visual Studio 2022 혹은 Visual Studio 2026

 

 

명령서(코드)는 어떤 언어로 작성되어야 할까요?

당연히 컴퓨터가 해석 할 수 있어야 하기 때문에 컴퓨터가 이해할 수 있는 언어로 작성되어야 합니다. 또한 컴퓨터는 반도체로 이루어져 있습니다. 반도체는 켜진 상태(1)와 꺼진 상태(0), 2가지 상태로 모든걸 표현합니다. 즉, 컴퓨터는 2진법만 이해할 수 있다는 이야기입니다. 결국에 명령서는 2진법으로 작성되어야합니다.

 

기계어(Low-Level Language, Machine Language)

아래와 같이 작성되어서 컴퓨터(기계)가 바로 이해할 수 있는 언어.

 

이번 단원에서 배우는 Hello, World! 예제의 이진패턴 파일(.o) 다만 위 그림은 16진법으로 표시되고 있습니다. 2진법으로 표시하면 너무 길어져서, 16진법으로 보여주는 것 뿐 차이 없습니다.

 

그럼 사람도 기계어로 코드를 작성해야 할까요?

옛날 사람들은 그랬습니다. 종이 카드에 구멍을 내서… 그러다가 사람들이 좀 더 편하게 작성 할 수 있는 어셈블리어가 나왔습니다.

 

어셈블리어(Assembly Language)

숫자가 아닌 문자이기에 사람에 좀 더 친숙한 언어. 이진 패턴의 특정 부분을 문자로 치환합니다. 그래서 기계어와 어셈블리어는 일대일 대응 관계를 가집니다. 양은 비교적 줄지 않았습니다. 모양만 예뻐진 언어라고 비유할 수 있습니다.

이번 단원에서 배우는 Hello, World! 예제의 어셈블리 파일.

 

소스코드(Source Code)

프로그래머가 고급 언어로 작성한 코드(명령서)를 소스코드라고 합니다.

 

그러나 너무 멀리 와버림.

결국 컴퓨터가 이해 할 수 있는건 기계어 뿐입니다. 사람이 고급 언어로 명령서(코드)를 작성하면 누군가는 “번역”해서 컴퓨터가 읽기 쉬운 기계어로 바꿔줘야합니다. 이런 “번역가”를 컴파일러라고 합니다.

 

빌드 프로세스(Build Process)

사람이 읽기 쉬운 고급 언어로 작성된 소스코드(명령서)를 컴퓨터가 읽기 쉬운 기계어로 변환하는 일련의 과정입니다

빌드 프로세스(Build Process)

'코딩' 카테고리의 다른 글

챕터 1-6 : 서식지정자  (0) 2026.02.23
챕터 1-5 : main() 함수와 printf() 함수  (0) 2026.02.23
챕터 1-4 : 프로젝트와 소스코드 생성  (0) 2026.02.23
챕터 1-3 : Compiler  (1) 2026.02.23
# 챕터 1-1 : 코딩이란,  (0) 2026.02.23