>> Edit article
이름
제목
패스워드
: 아주 기초적인 겁니다. : : 스택오버플로우를 보다가 : unsigned long get_sp( void ) : { : __asm__( "movl %esp, %eax" ); : } : : 란 내용이 있던데요... : : movl A, B 라고 하면 : B의 값을 A로 복사하는 건가요, 아니면 : A의 값을 B로 복사하는 건가요... : : 쉽죠? : : 확실한 답변 부탁드립니다. : : 한가지 더... : : 스택에서 보면 : : 100번지 200 300 400 : +-----------------+-----+-----+-------------+ : |지역변수.... | SFP | RET | 파라미터... | : +-----------------+-----+-----+-------------+ : |abc019d8d.... | 900 | 800 | d987f2... | : +-----------------+-----+-----+-------------+ : : 대충 이런 식일텐데... get_sp()가 반환하는 값이 : SFP의 주소인 200을 반환하는 건가요? : 아니면 SFP가 가지고 있는 값인 900을 반환하는 건가요? : : 물론 위의 100, 200, 300... 등은 편의상 임의로 잡은 것입니다. : : 그럼 두 가지 질문에 대한 답변 부탁드립니다... ^^ : : -- : 리눅서되기 절라 힘들다 1. mov A,B이면 A->B입니다. 따라서 sp를 ax에 저장하죠 ... ax라 함은 모든 서브루틴에서 돌아올때의 return 값입니다. 2. 파라미터 오른쪽의 주소 아닌가요? (인텔은 제가 잘 몰라서리 ...) ^^
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved