- 프로그램이 실행되기 위해서는(프로세스), 먼저 프로그램이 메모리에 적재되어야 한다.
- 또한, 프로그램에서 사용되는 변수들을 담을 메모리도 필요하다.
- 컴퓨터의 운영체제는 프로그램을 실행시키기 위해서 다양한 메모리 공간을 제공하고 있다.

프로그램이 실행되어 메모리에 적재되는 과정을 그림으로 표현한다.
메모리 구조
- 프로그램이 실행되기 위해서는 먼저 프로그램이 메모리에 로드(load)되어야 한다.
- 또한, 프로그램에서 사용되는 변수들을 저장할 메모리도 필요하다.
- 따라서 컴퓨터의 운영체제는 프로그램의 실행을 위해 다양한 메모리 공간을 제공하고 있다.
- 프로그램이 운영체제로부터 할당받는 대표적인 메모리 공간은 다음과 같다.
- 코드(Code)영역
- 데이터(Data)영역
- 스택(Stack)영역
- 힙(Heap)영역

1. 코드(code) 영역
- 우리가 작성한 소스코드가 들어 가는 부분. 즉, 실행할 프로그램의 코드가 저장되는 영역으로 텍스트(code)영역이라고도 부른다.
- CPU는 코드 영역에 저장된 명령어를 하나씩 가져가서 처리하게 된다.(윗 줄 읽고 처리, 아랫줄 읽고 처리)
- 실행 파일을 구성하는 명령어들이 올라가는 메모리 영역으로 함수, 제어문, 상수 등이 여기에 지정된다.
- 컴파일된 기계어가 들어간다.
2. 데이터(data) 영역
- 메모리의 데이터(data) 영역은 프로그램의 전역 변수와 정적(static) 변수가 저장되는 영역