Sub-Routine 분기명령 : CALL, CALLP, SBRT, RET
명령 | 사용 가능 영역 | 스텝수 | 플래그 | |||||||||||||||
M | X | Y | K | L | F | T | C | S | Z | D | @D | 정수 | 에러 | 제로 | 캐리 | |||
CALL(P) | n | - | - | - | - | - | - | - | - | - | - | - | - | ㅇ | 1 | - | - | - |
SBRT | n | - | - | - | - | - | - | - | - | - | - | - | - | ㅇ | 1 | - | - | - |
RET | - | - | - | - | - | - | - | - | - | - | - | - | - | - | 1 | - | - | - |
CALL, SBRT, RET |
---|
프로그램 수행 중 입력조건이 성립하면 ECALL ID n 명령에 따라 해당 ID의 프로그램으로 이동 후 그 프로그램 내 SBRT n ~ RET 명령 사이의 프로그램을 수행합니다.
ALL No는 중첩되어 사용 가능하며 반드시 SBRT n ~ RET 명령 사이의 프로그램은 END 명령 뒤에 있어야 합니다.
Error 처리가 되는 조건
n이 0 ~ 127 이외의 값이 입력되는 경우
CALL n이 있고 SBRT n이 없는 경우
SBRT n과 RET이 단독으로 있는 경우SBRT내에서 다른 SBRT를 CALL하는 것이 가능하며, 최대 16회까지 가능합니다.
출력 코일은 Call 명령 없이 조건과 다르게 동작됩니다.(XP/CP)
프로그램 예