arm procedure call

이번 장에서는 Arm 프로세서에서 함수를 호출하거나, 인자를 전달하고 리턴되는 Register 들의 역할을 살펴보고 프로시저가 무엇인지 알아보자. 1. Procedure Call 형식 : BL 리턴 주소는 lr 레지스터에 저장된다. (리턴 주소란? 해당 명령어를 마치고 다음으로 갈 주소) "Label"로 jump 하는 의미를 갖는다. 예시 838c의 명령어가 실행될 때, 리턴 주소는 8390이며, lr에 들어가게 된다. 이후 프로시저가 끝나면 8390 줄이 실행되게 된다. 2. Procedure Return 프로시저 콜이 있다면, 당연히 리턴도 있어야 할 것이다. 여기서는 자연스러운 리턴 대신 직접 할 수 있는 방법을 설명한다. 1) bx 명령어 bx lr은 레지스터 lr에 담긴 주소 (가리키는 주소)로..
suhwanc
'arm procedure call' 태그의 글 목록