temp 주소값 push 시 질문 있습니다.
239
작성한 질문수 3
안녕하세요. 대략적인 진행 방식은 어느정도 이해가 된 것 같습니다. 그런데
지역변수(temp) 할당 시에 매개변수에(&temp)값이 들어가는 부분을 도저히 찾을 수가 없네요 ㅠㅠ

혹시 CreatePlayer가 호출되기 전 push eax 부분이 매개변수까지 동시에 지정이 된다는 뜻일까요??
나머지 부분은 반복 학습을 하니 이해가 가는데 임시 저장소 생성시점만 이해가 가질 않습니다 ㅠㅠ
답변 1
0
&temp의 의미는 [temp라는 스택 지역 변수의 주소]입니다.
lea eax, [ebp-11ch]에서 ebp-11ch가 temp의 위치인데,
lea 명령어를 이용해서 해당 주소를 eax 레지스터에다 넣어준 후,
push를 해주는 것을 볼 수 있습니다.
0
주소값 push 까지는 이해가 된 것 같습니다.
그렇다면 push를 해줌으로써 temp 스택 지역과 그 위치를 가리키는 &temp가 동시에 할당되어진다고 보면 될까요? (제가 잘 이해한 게 맞을까요?)
0
temp 변수는 특별히 할당되는 시점이 따로 있는게 아니고,
스택 프레임이 만들어지는 시점에 보통 esp를 쫙 내리게 되는데
이 때 간접적으로 특정 위치에 사용하기로 (이번 경우엔 ebp-11ch 위치에)
컴파일러에 의해 코드가 만들어집니다.
visualstudio에서 파일분할관리실습시 설정 문의를 드립니다.
0
548
1
정렬함수 좀 더 확실하게 이해 할 방법이 있을까요?
0
445
1
strcpy() 구현 관련 질문
0
519
1
빌드(망치)를 누르니 이런 오류가 떴습니다. 어떻게 해야 하나요?
0
461
1
클래스 타입의 포인터 질문합니다
0
551
1
입력값을 enum 값에 넣어주는거 이제 막혔나요?
0
502
1
템플릿 특수화 관련 질문
0
387
1
포인터 관련 질문합니다!
0
267
1
Unable to start assembler. Check your settings.
0
840
2
cpu선택
0
544
1
포인터 질문이 있습니다
0
330
1
20:35 에서 구조체 크기에 대한 질문입니다!
0
589
1
iterator 삭제관련
0
411
1
함수 호출을 디스어셈블러로 분석하다가 궁금점이 생겼습니다!
0
315
1
15 분 45초 대 질문
0
312
0
스택 프레임 질문합니다!
2
310
1
오른값 참조 in 게임
0
388
0
동적할당 질문이 있습니다
0
454
1
안녕하세요 메모리에 대해 질문드립니다.
0
310
1
함수객체 의 매개변수
0
365
1
복사생성자
0
439
1
main이나 endl 부분이 주황색으로 표시된건 어떻게 하나요
0
426
1
포인터 실습 강의를 보고 궁금한게 있습니다.
0
358
1
스택 오버플로우
2
795
1





