메모

스택프레임 : 복습

romance penguin 2017. 1. 11. 22:15
반응형


코드 세그먼트 : 소스가 들어가는곳

데이터 세그먼트 : 전역변수, 상수

힙 : alloc 할당하는 구역

스택 : 인수, 함수복귀주소, 지역변수



push나 pop 할때 esp는 +-4로 증감한다. ( 32bit 환경 한정, 스택하나의 크기는 4byte)



어셈블리어

_main

push 인수

call 함수 // push+jmp ( 복귀주소 push, eip에 함수주소 저장)


_func

push ebp // 전에 쓰던 함수주소 push

mov ebp, esp //현재 스택 포인트

sub esp,지역변수크기 // 지역변수크기 만큼 스택포인터 감소 ( 확장 개념 )

~함수 본체실행

mov esp, ebp //스택복귀

pop ebp

ret //복귀


반응형