CALL Subroutine Call
語 法 CALL k
編 碼 1 00kk kkkk kkkk
操作內容 PC+1 --> [Top of Stack]
k --> PC(9::0)
R3(7::5) --> PC(12::10)
受影響的旗標 無
說 明 當呼叫一個副程式時﹐首先會將下一個指令的執行位址
存入堆疊中﹐接下來將副程式的進入位址載入程式計數
器中。
舉例說明 HERE:
CALL SUBRTN
CONT:
MOV A,@10
執行CALL 指令之前
PC = address HERE
執行CALL 指令之後
PC = address SUBRTN
[Top of Stack] = address CONT
JMP Unconditional Branch
語 法 JMP k
編 碼 1 01kk kkkk kkkk
操作內容 k --> PC(9::0)
R3(7::5) --> PC(12::10)
受影響的旗標 無
說 明 當執行一個跳躍指令﹐指令後所描述的執行位址會載入
程式計數器中。
舉例說明 HERE JMP BRANCH
執行JMP 指令之前
PC = address HERE
執行JMP 指令之後
PC = address BRANCH
INT SOFtware Interrupt
語 法 INT
編 碼 1 1110 0000 0001
操作內容 PC + 1 --> [Top of Stack]
0001H --> PC
受影響的旗標 無
說 明 軟體中斷指令﹐首先將下一個位址存入堆疊中﹐然後將
0x01 載入程式暫存器中。
舉例說明 ORG 0x001
JMP SET_INT
•
•
SET_INT﹕
•
•
RET
MAIN﹕
•
•
HERE﹕
INT
CONT﹕
CLRA
執行INT 指令之前
PC = address HERE
執行INT 指令之後
PC = 0001H
[Top of Stack] = address CONT
本文关键字:暂无联系方式义隆单片机,单片机-工控设备 - 义隆单片机