인프런 커뮤니티 질문&답변

김도현님의 프로필 이미지
김도현

작성한 질문수

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문

포인터 기초 #1

x84, x64 스택 메모리

작성

·

400

0

스택이 높은 주소 에서 낮은 주소로 값이 저장 되는 것으로 알고 있었는데 x64 에서는 스택 메모리의 저장 방법이 다른건가요? x64로 실행했을 경우 메모리 까보면 낮은 주소에서 높은 주소 순서대로 저장되는 걸로 보이네요

답변 1

0

Rookiss님의 프로필 이미지
Rookiss
지식공유자

스택은 x86, x64 모두 높->낮 순서로 증가하는 것이 맞습니다.
x64의 경우 왜 그렇게 생각하셨는지 스샷 첨부 가능할까요?

김도현님의 프로필 이미지
김도현
질문자

image주소 뒷자리 B4 -> D4 -> F8 순서대로 값이 들어가고 있는것 처럼 보이는데 제가 어느 부분에서 착각을 하고 있는건지 모르겠네요 ㅠㅠ

Rookiss님의 프로필 이미지
Rookiss
지식공유자

스택이 '증가'하는 방향은 함수의 스택 프레임을 봐야 합니다.
main() 내부에서 다른 함수를 호출할 때,
스택이 어느 방향으로 증가하는지 보면 되겠죠.
동일한 함수의 스택 프레임 내에서, 변수끼리의 순서는 사실 컴파일러 마음이라
변수 끼리의 순서를 보는 것으로 판별할 수 없습니다.

김도현님의 프로필 이미지
김도현

작성한 질문수

질문하기