variable

변수의 속성

  • 이름

  • 타입

    • 타입 중에는 사이즈를 포함한 타입이 있다.

  • 메모리 주소

  • 사이즈

    • 변수 데이터의 끝점 : 메모리주소 + 사이즈

변수를 선언한다는 것의 의미

  • 메모리상 어떤 부분에 값이 쓰일 것이다.

  • 여기서 어떤 부분 = 메모리 번지

    • 즉, 모든 변수는 메모리 번지를 가지고 있다.

  • 메모리 번지를 통해 값의 시작점을 알 수 있다. 하지만 어디까지 읽어야 하는지 그 끝점도 알아야 제대로 데이터를 읽어올 수 있다.

    • 즉, 데이터의 사이즈를 알아야 한다.

    • 끝점 = 메모리 주소 + 사이즈

변수에 값을 넣는 과정을 어셈블리어로 살펴보기

  • 어셈블리 디버깅을 통해서 살펴볼 수 있다.

  • mov : 옮겨라 (=값을 이동해라)

  • dword : 4바이트

  • ptr [a] : 포인터 메모리 번지

  • 3 : 3이라는 값을 써라

변수의 타입과 사이즈

int

  • int : 4/8 byte

  • int32 : 4byte

  • int64 : 8byte

  • int8 : 1byte

  • int16 : 2byte

float

  • float32 : 4byte

  • float64 : 8byte

사이즈가 없는 타입들

  • bool : true / false

  • string : “”

Last updated