JMP指令在彙編語言中是一種無條件跳轉指令,其作用是直接將程式控制權轉移到記憶體中的另一個指定程式地址。
JMP指令可以修改指令指針IP(Instruction Pointer)或同時修改CS(Code Segment)和IP,從而實現程式流程的控制。它可以根據給定的轉移距離或目的地址進行跳轉,包括基於位移的跳轉和基於目的地址的跳轉。例如,jmp short 標號會修改IP的後八位,適用於短距離跳轉;jmp near ptr 標號修改IP的16位,適用於較近的跳轉;jmp far ptr 標號同時修改CS和IP,實現段間的遠距離跳轉。此外,jmp指令還可以根據16位暫存器或記憶體單元的目的地址進行跳轉。
JMP指令在程式中有著廣泛的套用,常用於實現程式的循環控制、分支控制以及迴路控制等功能。