Assembly Language Help (alang.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
JMP Instruction
 Summary Key Example                    Up Contents Index Back
────────────────────────────────────────────────────────────────────────────
 
 11101011    disp (1)
──────────────────┬─────────────────────────┬───────────────────────────────
 JMP  label       │ jmp   SHORT exit        │ 88/86 15
                  │                         │   286 7+m
                  │                         │   386 7+m
                  │                         │   486 3
──────────────────┴─────────────────────────┴───────────────────────────────
 
 11101001    disp (2)*
──────────────────┬─────────────────────────┬───────────────────────────────
 JMP  label       │ jmp   close             │ 88/86 15
                  │ jmp   NEAR PTR distant  │   286 7+m
                  │                         │   386 7+m
                  │                         │   486 3
──────────────────┴─────────────────────────┴───────────────────────────────
 
 11101010    disp (4)*
──────────────────┬─────────────────────────┬───────────────────────────────
 JMP  label       │ jmp   FAR PTR close     │ 88/86 15
                  │ jmp   distant           │   286 11+m,pm=23+m
                  │                         │   386 12+m,pm=27+m
                  │                         │   486 17,pm=19
──────────────────┴─────────────────────────┴───────────────────────────────
 
 11111111    mod,100,r/m      disp (0 or 2)
──────────────────┬─────────────────────────┬───────────────────────────────
 JMP  reg16       │ jmp   ax                │ 88/86 11
 JMP  reg32       │                         │   286 7+m
                  │                         │   386 7+m
                  │                         │   486 5
──────────────────┼─────────────────────────┼───────────────────────────────
 JMP  mem16       │ jmp   WORD PTR [bx]     │ 88/86 18+EA
 JMP  mem32       │ jmp   table[di]         │   286 11+m
                  │ jmp   DWORD PTR [si]    │   386 10+m
                  │                         │   486 5
──────────────────┴─────────────────────────┴───────────────────────────────
 
 11111111    mod,101,r/m      disp (4)
──────────────────┬─────────────────────────┬───────────────────────────────
 JMP  mem32       │ jmp   fpointer[si]      │ 88/86 24+EA
 JMP  mem48       │ jmp   DWORD PTR [bx]    │   286 15+m,pm=26+m
                  │ jmp   FWORD PTR [di]    │   386 12+m,pm=27+m
                  │                         │   486 13,pm=18
──────────────────┴─────────────────────────┴───────────────────────────────
  * On the 80386/486, the displacement can be four bytes for near
    jumps or six bytes for far jumps.
 
    Timings for jumps through call or task gates are not shown, since
    they are normally used only in operating systems.
 
    80386/486 only. You can use DWORD PTR to specify near register-
    indirect jumps or FWORD PTR to specify far register-indirect jumps.
                                    -♦-