변수란 결국 변경 가능한 데이터가 담길 수 있는 공간 또는 그릇이다.
var a;
주소 | … | 1002 | 1003 | 1004 | 1005 | … |
---|---|---|---|---|---|---|
데이터 | 이름: a 값: |
예제 1-1 의 명령을 받아 메모리 영역에서 어떤 작업을 수행하는지 표현한 것이다.
변수 선언 과정
예제 1-1의 명령을 받은 컴퓨터는 메모리에서 비어있는 공간 하나를 확보한다. 여기서는 임의로 1003번으로 정했다. 이 공간의 이름을 a라고 지정한다
이후에 사용자가 a에 접근하고자 하면 컴퓨터는 메모리에서 a라는 이름을 가진 주소를 검색해 해당 공간에 담긴 데이터를 반환할 것이다.
데이터 할당의 전체 흐름
변수영역
데이터 영역
주소 | … | 1002 | 1003 | 1004 | 1005 | … |
---|---|---|---|---|---|---|
데이터 | 이름 : a, 값: @5004 | |||||
주소 | … | 5002 | 5003 | 5004 | 5005 | … |
데이터 | ‘abc’ |