[컴퓨터 구조 ②] 실행과 저장의 구조

컴퓨터 구조 겉핥기 중
김보람's avatar
Jul 25, 2025
[컴퓨터 구조 ②] 실행과 저장의 구조

4. 데이터 메모리

데이터 메모리는 프로그램이 실행 중일 때 숫자, 문자, 배열, 객체 등의 데이터 값들을 저장하는 공간.

📌 구조와 예시

  • RAM(주기억장치):

    • 데이터를 임시로 저장하고, 전원이 꺼지면 사라짐.

    • 예: 게임에서 캐릭터의 체력, 위치 값 등이 이곳에 저장됨.

  • 주소 기반 접근:

    • 데이터는 모두 특정 "주소"에 저장됨. 예: 0x0000AB10 위치에 50이라는 값 저장.

  • 변수 저장 예시:

    int a = 5; int b = a + 2;
    • a의 값 5는 메모리의 한 주소에 저장되고,

    • ba의 값을 읽어서 연산 후 또 다른 주소에 저장됨.

🧠 기억해야 할 것

  • CPU는 직접 데이터 메모리에 접근 못함레지스터에 불러와서 연산 후 다시 저장

  • 스택(Stack): 함수 호출 시 생기는 지역 변수 저장

  • 힙(Heap): 동적 할당된 메모리 공간 (예: malloc())


5. 기계어와 프로그램

컴퓨터는 오직 기계어, 즉 0과 1로 구성된 명령어만 이해할 수 있다.

📌 명령어 형태

  • 예: 10110000 01100001

    • 앞의 8비트는 명령 종류 (예: 데이터를 레지스터로 이동)

    • 뒤의 8비트는 실제 값이나 주소

💡 예시로 보는 실행 흐름

int x = 10;
x = x + 5;

이 코드는 아래처럼 동작함:

  1. 기계어로 변환 (컴파일됨)

  2. x에 10 저장 → MOV R1, 10

  3. x + 5 계산 → ADD R1, 5

  4. 결과 다시 x 위치에 저장 → MOV [주소], R1

🧠 기억할 것

  • 기계어 → CPU 직접 실행

  • 어셈블리어는 사람이 읽기 편한 기계어 형태 (예: MOV AX, 5)

  • 컴파일러가 고급 언어를 기계어로 번역함


6. 프로그램 메모리

프로그램 메모리는 실행되는 기계어 코드가 저장된 공간

📌 어떻게 사용될까?

  • 프로그램 실행 시, 컴파일된 결과가 RAM의 특정 구역(예: 0x400000)에 로드됨.

  • CPU는 Program Counter를 통해 한 줄씩 명령어를 읽음.

💡 예시

int main() {
  printf("Hello");
}

→ 컴파일 후:

  1. printf 관련 코드가 메모리 특정 위치에 저장됨

  2. CPU는 해당 주소로 이동해 실행

🧠 중요 포인트

  • 이 공간은 보통 읽기 전용

  • 악성코드 방지를 위해 데이터 공간과 분리해 보호함


7. 프로그램 메모리와 데이터 메모리

💡 시나리오: 영상 파일을 플레이할 때

바탕화면의 movie.mp4 파일을 더블클릭해서 영상을 재생한다고 가정해볼때
컴퓨터 메모리(RAM)에는 다음과 같은 일이 벌어진다

🔹 1단계: 영상 플레이어 프로그램이 실행됨

  • 예: VLC Media Player 실행

  • 이 프로그램의 기계어 코드(명령어들)가 운영체제에 의해 RAM의 프로그램 메모리 영역에 로드됨

  • 이 메모리는 실행할 코드만 저장하는 공간으로, 예:

    • 파일 열기

    • 화면 렌더링

    • 오디오 디코딩

    • 재생 버튼 처리 등

→ 이 부분이 프로그램 메모리 (명령어 메모리)

🔸 2단계: 영상 데이터(.mp4)가 메모리에 로드됨

  • 영상 파일의 실제 내용(화면, 소리, 자막 등)은 별도로 RAM의 데이터 메모리에 로드됨

  • 이는 CPU가 계산하거나 연산하는 데이터이고, 계속 변하거나 처리됨

    • 예: 동영상 프레임 → 디코딩 → 화면 출력

    • 오디오 신호 → 디코딩 → 스피커 출력

→ 이 부분이 데이터 메모리

🧠 정리: 두 메모리의 실전 역할

구분

역할

예시 (영상 재생 시)

프로그램 메모리

명령어 저장

VLC 프로그램 코드: 화면 그리기, 버튼 클릭 처리 등

데이터 메모리

연산 데이터 저장

영상 파일 내용, 버퍼링된 프레임, 디코딩 중간 결과 등

Share article

RN 삽질 일지