콜 사이트
Call site프로그래밍에서 함수 또는 서브루틴의 콜 사이트는 함수를 호출하는 위치(코드의 라인)이다(동적 디스패치를 통해 호출하거나 호출할 수 있다).콜 사이트는 0개 이상의 인수가 함수에 전달되고 0개 이상의 반환 값이 수신되는 곳이다.
예
// 이것은 함수 ''정의 기능을 발휘하다 sqr(x) { 돌아오다 x * x; }
기능을 발휘하다 foo() { // 이 기능에서 함수 sqr의 두 통화 사이트 a = sqr(b); c = sqr(b); }
조립자 예
* (보통은) 외부의 ...을 부르다. R13 보통은 포인트 로 a 절약하다 면적 을 위해 일반적 목적 등록부 사전에 * 그리고 R1 포인트 로 a 리스트를 작성하다 의 주소 의 매개변수 (만일 아무 것이나) LA R1,=A(B) 점을 찍다 로 (주소를 쓰다 의) 가변적 'B' L R15,=A(SQR) 적재 포인터 (주소를 쓰다 상수의) 로 따로따로 편찬된/조립된 서브루틴의 발 R14,R15 가다 로 서브루틴의, 어떤 것 돌아온다 - 보통은 에서 영 변위시키다 에 관하여 R14 * 내부의 부르다 (보통은 많이 더 작은 머리 위의 그리고 아마도 '알려진' 매개변수) 발 R14,SQR 가다 로 프로그램 라벨을 붙이다 그리고 돌아오다
경우에 따라 수익은 성패를 나타내는 효율적인 방법이다.반환 지점의 작은 분기 테이블이 필요한[clarification needed] +0 또는 +4,+8, +12 등으로 반환할 수 있음 - HLL 스위치 문과 같이 케이스 처리를 위해 직접 가십시오.
발 R14,SQR 가다 로 프로그램 라벨을 붙이다 그리고 돌아오다 (사용. 상쇄하다 에 관하여 R14 로서 돌아오다 주소를 쓰다) B 실패 (RET+0) - Something 틀리다 * (RET+4) - 알겠습니다.
그러나 일반적으로 반환 코드는R15
(0
=OK,4
= 실패 또는 유사한 ..) 그러나 테스트를 위해 별도의 지침이 필요함R15
또는 분기 인덱스로 직접 사용할 수 있다.
참고 항목
참조