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

v44ads님의 프로필 이미지
v44ads

작성한 질문수

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

스택 메모리

rsp와 스택 시작 위치 질문입니다!

작성

·

277

0

add rsp, 16을 해준 이유는 push 1, push 2를 통해
rsp 값이 -16 됐기 때문으로 이해했습니다.

초기 스택의 시작지점과 프로그램 종료 전의 rsp가 동일하지 않아서 crash가 생기는건가요?
그렇다면 rsp처럼 현재 스택의 top이 아닌 초기 스택의 bottom을 저장하고 있는 포인터도 있는건지 궁금합니다!

답변 2

1

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

rsp가 꼭 어디 위치에 있어야 되고 그런 것은 아니고,
별도의 bottom 위치가 있는 것도 아닙니다.
다만 ret 같은 특수 명령들(특히 코드 위치 이동 관련)을 만나면
rsp가 가리키는 스택 위치의 값을 꺼내서 그쪽으로 가게 되는데요.
만약 주소가 엉뚱하다면 크래시가 나겠죠.

0

v44ads님의 프로필 이미지
v44ads
질문자

빠른 답변 감사합니다!!

v44ads님의 프로필 이미지
v44ads

작성한 질문수

질문하기