系统工具

JMP

SAS(全球最大的统计学软件公司)推出的一种交互式可视化统计发现软件系列,包括JMP,JMP Pro,JMP Clinical,JMP Genomics,SAS Simulation Studio for JMP等强大的产品线。主要用于实现统计分析。JMP的算法源于SAS,特别强调以统计方法的实际应用为导向,交互性、可视化能力强,使用方便,尤其适合非统计专业背景的数据分析人员使用,在同类软件中有较大的优势。


含义

无条件的转移到指令指定的地址去执行从该地址开始的命令。指令必须指定转移的目标地址(或称转向地址)。 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 $

就是跳转到当前的地址, 所以它是一个死循环,不继续执行下面的程序了。

我已经设置好中断服务程序了,只要发生中断就会进入中断服务程序,所有的操作都在中断服务程序处理。