4.1 변수란 무엇인가? 왜 필요한가?

변수는 프로그래밍 언어에서 데이터를 관리하기 위한 핵심개념

Untitled

Untitled

각 셀은 고유의 메모리 주소를 갖는다. 이 메모리 주소는 메모리 공간의 위치를 나타내며, 0부터 시작해서 메모리의 크기만큼 정수로 표현된다. 예를들어,4GB 메모리는 0부터 4,294,967,295

( 0 x 0 0 0 0 0 0 0 0 〜 0 x F F F F F F F F ) 까지의 메모리 주소를 갖는다.

ex)10+20=30 일때 30이란값은 메모리주소 어딘가에 랜덤으로 저장될 것이고 이것을 재사용하기 위해 30에 대한 값을 불러오기위해 메모리에 접근하려는 경우

사용자가 직접적으로 메모리 주소에 접근하는 것은 보안 및 안정성 문제로 인해 권장되지 않습니다.

컴퓨터의 메모리는 운영체제에 의해 관리되는 중요한 자원입니다. 런타임환경으로 얻은 메모리영역이 아니라 운영체제가 작동하는 메모리를 실수로 건드린다면 치명적인 오류를 발생시킬 것입니다.

또한, 운영체제는 메모리 관리를 통해 여러 프로세스가 안전하게 메모리를 공유하고 충돌이 발생하지 않도록 보장합니다. 사용자가 메모리 주소에 직접 접근하면 이러한 메모리 관리 기능을 우회하게 되어 시스템의 안정성과 보안에 위협이 될 수 있습니다.//웹 브라우저의 자바스크립트 엔진이나 Node.js와 같은 런타임 환경은 해당 애플리케이션을 실행하기 위한 메모리 공간을 운영체제로부터 할당받아 사용합니다.

따라서, 일반적으로 사용자는 메모리 주소에 직접 접근하지 않고 프로그래밍 언어나 라이브러리를 통해 추상화된 인터페이스를 사용하여 메모리에 접근하고 값을 조작합니다. 이를 통해 시스템의 안정성과 보안을 보장하며, 프로그램을 안전하게 실행할 수 있습니다.

변수variable는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름을 말한다.

따라서 개발자가 직접 메모리 주소를 통해 값을 저장하고 참조할 필요가 없고 변수를 통해 안전하게 값에 접근할 수 있다.

변수에 값 을 저장하는 것을 할당(대입, 저 장 )이라 하고,변수에 저장된 값을 읽어 들이는 것을 참조 reference 라고 한다.

4.2 식별자

변수 이름을 식별자라고도 한다. 식별자는 어떤 값을 구별해서 식별 할 수 있는 고유 한 이름을 말 한다 . 사람을 이름으로 구별해서 식별하는 것처럼 값도 식별자로 구별해서 식별할 수 있다.

즉 , 식별자는 값이 저장되어 있는 메모리 주소 와 매핑 관계를맺으며 , 이 매핑 정보도 메모리에 저장되어야 한다. 식별자는 값이 아니라 메모리 주소를 기억하고 있다.

//식별자라는 용어는 변수 이름에만 국한해서 사용하지 않는다. 예를 들어, 변수,함수, 클래스 등의 이름은 모두 식별자다. 식별자인 변수 이름으로는 메모리 상에 존재하는 변수 값을 식별할 수 있고,함수 이름으로는 메모리 상에 존재하는 함수(자바스크립트에서 함수는 값이다)를 식별할 수 있다. 즉 ,메모리 상에 존재하는 어떤 값을 식별할 수 있는 이름은 모두 식별자라고 부른다.