8086 彙編 jmp 指令

2022-05-17 05:22:56 字數 1220 閱讀 3312

功能:修改cs、ip的指令、可以通過改變cs、ip中的內容,來控制cpu要執行的目標指令。

背景:一般情況下指令是順序地逐條執行的,而在實際中,常需要改變程式的執行流程。

轉移指令,

短轉移:「jmp short 標號」

功能:(ip)=(ip)+8位位移

原理(1)8位位移=「標號」處的位址-jmp指令後的第乙個位元組的位址;

(2)short指明此處的位移為8位位移;

(3)8位位移的範圍為-128~127,用補碼表示;

(4)8位位移由編譯程式在編譯時算出

近轉移:指令「jmp near ptr 標號」

功能: (ip)=(ip)+16位位移

原理(1)16位位移=「標號」處的位址-jmp指令後的第乙個位元組的位址;

(2)near ptr指明此處的位移為16位位移,進行的是段內近轉移;

(3)16位位移的範圍為 -32769~32767,用補碼表示;

(4)16位位移由編譯程式在編譯時算出。

1、同時修改cs、ip的內容

;

;jmp 2ae3:

3

2、僅修改ip的內容

;

功能:用暫存器中的值修改ip

;jmp 某一合法暫存器

jmp ax (類似於 mov ip, ax)

3、**中跳轉行

;

jmp 直接跳過 add ax,1 行到 inc ax

mov ax,0

jmpshort s

add ax, 1

s:inc ax

彙編轉移指令jmp原理

在計算機中儲存的都是二進位制數,計算機將記憶體中的某些數當做 某些數當做資料。在根本上,將cs,ip暫存器所指向的記憶體當做 指令轉移就是修改cs,ip暫存器的指向,彙編中提供了一種修改它們的指令 jmp。jmp指令可以修改ip或cs和ip的值來實現指令轉移,指令格式為 jmp 標號 將指令轉移到標...

8086彙編 rep 指令

rep指令常和串傳送指令搭配使用 功能 根據cx的值,重複執行後面的指令 功能 以位元組為單位傳送 1 es 16 di ds 16 si 2 如果df 0則 si si 1 di di 1 如果df 1則 si si 1 di di 1 功能 以字為單位傳送 1 es 16 di ds 16 si...

8086彙編 call 指令

字面意思 呼叫子程式 實質 流程轉移指令,它們都修改ip,或同時修改cs和ip call指令實現轉移的方法和 jmp 指令的原理相似 格式 call 標號 返回指令 ret retf cpu執行call指令,進行兩步操作 1 將當前的 ip 或 cs和ip 壓入棧中 2 轉移到標號處執行指令。cal...