기금넷 공식사이트 - 펀드 투자 - WXJNB 기금

WXJNB 기금

건물 주인은 하위 프로그램 호출 명령 LCALL 과 점프 명령 LJMP, JNB 등의 두 가지 명령에 대한 개념을 잘 모른다. 을 눌러 섹션을 인쇄할 수도 있습니다

1, LJMP, JNB 및 CJNE 은 모두 점프 문입니다. 점프 후 프로그램 포인터 PC 가 점프 위치를 가리키지만 SP 스택 값에는 영향을 주지 않습니다.

2.LCALL, ACALL 등. 하위 프로그램 호출 명령입니다. 실행 전에 다음 명령어의 주소 (PC 포인터) 를 스택 (2 바이트) 에 푸시해야 하므로 SP+2 를 누른 다음 PC 포인터를 하위 프로그램이 하위 프로그램 실행을 시작하는 위치로 이동합니다. 서브루틴이 실행된 후 PC 포인터는 RET 명령 호출 전 CALL 문의 다음 명령으로 복원되고 SP-2 도 복구됩니다.

LCALL 은 프로그램의 많은 부분에서 사용되지만 해당 하위 프로그램 본문에는 RET 반환 명령이 없으므로 SP 가 증가합니다. 예를 들면 다음과 같습니다.

。 。 。 。 。 。 。 。 。

조직 30H

WXL:jnbp 2.5 SCL

LJMPWXL

SCL:lcally 1

JNBP2.5, WXL 100

LCALLWXL 이라는 말에 문제가 있습니다. 실행이 완료되면 SP+2, 위의 WXL, 다시 이것으로 돌아가면 SP 는 +2 가 되고 결코 끝나지 않습니다.

。 。 。 。 。 。 。 。 。 。

이런 실수가 너무 많고 소프트웨어 기능도 모르기 때문에 일일이 열거하지 않는다. 나는 집주인이 다시 자신의 마음을 정리할 것을 제안한다.