含義無條件的轉移到指令指定的地址去執行從該地址開始的命令。指令必須指定轉移的目標地址(或稱轉向地址)。 JMP指令不影響條件碼。計算機組合語言中的一種跳轉指令。當需要分支程式時,散轉程式有時可以幫我們實現。使用指令JMP @A+DPTR,可實現多分支轉移。它是根據某種輸入或運算的結果,分別轉向各個處理程式段取執行程式。型別該指令分直接轉移和間接轉移兩種。直接轉移又可分短程(SHORT)、近程(NEAR)和遠端(FAR)3種形式。當程式執行到JMP指令時,就無條件地轉移到指令中所指示的目的地址。該指令的一般格式為JMP OPRD;OPRD是轉移的目的地址。直接轉移的3種形式為:①短程轉移(直接短轉移)指令格式:JMP SHORT OPRD語法格式: JMP 地址標號 ;(IP)←(IP)+8位位移量指令功能:OPRD為轉移地址的標號,指令中的SHORT規定了OPRD為有符號的8位二進位制數,OPRD為轉移地址的偏移量。該指令將程式執行的順序轉移到由(IP)+OPRD形成的新的程式執行的目標地址,從而實現程式的轉移。轉移的目標地址OPRD在指令中可以直接使用標號地址,但要求轉移的目標地址的範圍只能在JMP指令所處地址的-128~+127位元組範圍之內,如超出該範圍,彙編時出錯。② 近程轉移(段內直接轉移)指令格式:JMP NEAR PTR OPRD語法格式: JMP 地址標號 ;(IP)←(IP)+16位位移量指令功能:與短程轉移的功能和要求相同,不同之處是近程轉移的OPRD為有符號的16位二進位制數,指令將程式執行的順序轉移到由(IP)+OPRD形成的新的程式執行的目標地址,轉移的目標地址的範圍只能在JMP指令所處地址的-32768~+32767位元組範圍之內,如超出該範圍,彙編時出錯。使用該指令時NEAR可省略③段間直接轉移(遠端轉移)指令格式:JMP FAR PTR OPRD語法格式: JMP 地址標號 ;(IP)←新的偏移地址, ;(CS)←新的程式碼段地址指令功能:指令中用FAR PTR規定了該指令為段間的轉移,OPRD為目的地址的標號,目的地址與JMP指令所在地址不在同一段內。執行該指令時要修改CS和IP的內容,將OPRD所在段的段地址送CS中,OPRD的段內偏移地址送IP中。④ 段內間接轉移指令格式:JMP WORD PTR OPRD語法格式:JMP reg16/mem ;(IP)←新的偏移地址指令功能:與短程轉移的功能和要求相同,不同之處是段內間接轉移的OPRD 可以是除立即數外的任何寄存或儲存器定址方式,轉移的目標地址由OPRD的內容確定。 [1] ⑤ 段間間接轉移指令格式:JMP DWORD PTR OPRD語法格式:JMP mem32指令功能:指令中用DWORD PTR規定了該指令為段間間接轉移,OPRD只能是儲存器定址方式。執行該指令時將定址到的記憶體單元的第一個字送入IP中,第二個字送入CS中指令例子JMP $就是跳轉到當前的地址, 所以它是一個死迴圈,不繼續執行下面的程式了。我已經設定好中斷服務程式了,只要發生中斷就會進入中斷服務程式,所有的操作都在中斷服務程式處理。
含義無條件的轉移到指令指定的地址去執行從該地址開始的命令。指令必須指定轉移的目標地址(或稱轉向地址)。 JMP指令不影響條件碼。計算機組合語言中的一種跳轉指令。當需要分支程式時,散轉程式有時可以幫我們實現。使用指令JMP @A+DPTR,可實現多分支轉移。它是根據某種輸入或運算的結果,分別轉向各個處理程式段取執行程式。型別該指令分直接轉移和間接轉移兩種。直接轉移又可分短程(SHORT)、近程(NEAR)和遠端(FAR)3種形式。當程式執行到JMP指令時,就無條件地轉移到指令中所指示的目的地址。該指令的一般格式為JMP OPRD;OPRD是轉移的目的地址。直接轉移的3種形式為:①短程轉移(直接短轉移)指令格式:JMP SHORT OPRD語法格式: JMP 地址標號 ;(IP)←(IP)+8位位移量指令功能:OPRD為轉移地址的標號,指令中的SHORT規定了OPRD為有符號的8位二進位制數,OPRD為轉移地址的偏移量。該指令將程式執行的順序轉移到由(IP)+OPRD形成的新的程式執行的目標地址,從而實現程式的轉移。轉移的目標地址OPRD在指令中可以直接使用標號地址,但要求轉移的目標地址的範圍只能在JMP指令所處地址的-128~+127位元組範圍之內,如超出該範圍,彙編時出錯。② 近程轉移(段內直接轉移)指令格式:JMP NEAR PTR OPRD語法格式: JMP 地址標號 ;(IP)←(IP)+16位位移量指令功能:與短程轉移的功能和要求相同,不同之處是近程轉移的OPRD為有符號的16位二進位制數,指令將程式執行的順序轉移到由(IP)+OPRD形成的新的程式執行的目標地址,轉移的目標地址的範圍只能在JMP指令所處地址的-32768~+32767位元組範圍之內,如超出該範圍,彙編時出錯。使用該指令時NEAR可省略③段間直接轉移(遠端轉移)指令格式:JMP FAR PTR OPRD語法格式: JMP 地址標號 ;(IP)←新的偏移地址, ;(CS)←新的程式碼段地址指令功能:指令中用FAR PTR規定了該指令為段間的轉移,OPRD為目的地址的標號,目的地址與JMP指令所在地址不在同一段內。執行該指令時要修改CS和IP的內容,將OPRD所在段的段地址送CS中,OPRD的段內偏移地址送IP中。④ 段內間接轉移指令格式:JMP WORD PTR OPRD語法格式:JMP reg16/mem ;(IP)←新的偏移地址指令功能:與短程轉移的功能和要求相同,不同之處是段內間接轉移的OPRD 可以是除立即數外的任何寄存或儲存器定址方式,轉移的目標地址由OPRD的內容確定。 [1] ⑤ 段間間接轉移指令格式:JMP DWORD PTR OPRD語法格式:JMP mem32指令功能:指令中用DWORD PTR規定了該指令為段間間接轉移,OPRD只能是儲存器定址方式。執行該指令時將定址到的記憶體單元的第一個字送入IP中,第二個字送入CS中指令例子JMP $就是跳轉到當前的地址, 所以它是一個死迴圈,不繼續執行下面的程式了。我已經設定好中斷服務程式了,只要發生中斷就會進入中斷服務程式,所有的操作都在中斷服務程式處理。