ㅋㅋ
질문입니다
장난칠라고 지금 시간에 올리는건 진짜 절대 아닙니다 ㅡㅡa
abi문서보면
3.2.1 에
r0 함수의 prologs들로 사용되는 휘발성(?) 레지스터이다
원문-> r0 Volatile register used in function prologs
함수의 prologs 가 무얼뜻하는걸까요
단순히 함수호출시 사용되는 인자를 저장하는 레지스터로 이용된다라는
뜻일가요??
당연하다고 하시고
이런 질문 왜올리냐고 하시면 OTL..
자 시간잽니다!
현재 시각 am 1:40
질문입니다
장난칠라고 지금 시간에 올리는건 진짜 절대 아닙니다 ㅡㅡa
abi문서보면
3.2.1 에
r0 함수의 prologs들로 사용되는 휘발성(?) 레지스터이다
원문-> r0 Volatile register used in function prologs
함수의 prologs 가 무얼뜻하는걸까요
단순히 함수호출시 사용되는 인자를 저장하는 레지스터로 이용된다라는
뜻일가요??
당연하다고 하시고
이런 질문 왜올리냐고 하시면 OTL..
자 시간잽니다!
현재 시각 am 1:40
댓글 4
-
서두원
2007.06.17 01:52
-
변유준
2007.06.17 10:03
두원이는 모르는군..ㅎㅎ -
김재호
2007.06.17 21:32
3.5.4 Function Prologue and Epilogue 에 보면
A function's prologue establishes a stack frame, if necessary, and may save any nonvolatile registers it uses.
prologue는 stack frame을 지정하고, 필요하다면 자신이 사용할 비휘발성 레지스터를 저장한다. 라고 되있는걸로 봐서는
r0: 비휘발성 레지스터의 내용을 저장할때 사용
r1: 스택 프레임 포인터
설명으로 봐서는 그럴것 같음. 맞겠지 ㅎ -
변유준
2007.06.19 07:34
형~~ 형 답변은 방향이 다른거 같아요 제 질문에..으하하하~~ㅋㅋㅋ
.
고 명서 유닉스*리눅스 프로그래밍 필수 유틸리티에 나오는군요..ㅎ
결국 함수가 호출 되었을시 함수의 리턴어드레스 다음에 오는 esp를 ebp에 저장하여 ebp를 기준으로 오프셋을 이용하여 스택에 저장된 지역변들을 사용할 수 있도록 스택프레임을 설정하는 과정인듯 합니다.
이 프롤로그 과정에서 스택프레임을 설정할때 휘발성 지역변수나 인자값등을 저장하기 위해 r0 레지스터를 사용하는게 아닐까 싶은데요..
제가 잘못알고 있을 수 있으므로 -_- 거친의견 부탁드립니다..
근데 시간은 왜 재는거죠? 제가 모르는 뭔가가 있군요 ㅎㅎ