微机原理及应用 16 无条件转移指令:JMP 指令功能: 无条件转移指令可以转移到内存中存放的任何程序段。 指令必须指定转移的目标地址(或称转移地址)。无 条件转移指令不影响标志位。 指令分类: 段内转移和段间转移。段内转移只须改变IP寄存器的内 容,用新的转移目标地址代替原有的IP的值就可以。 段间则转到另一段去执行程序,因此,不仅要修改IP 寄存器的内容,而且还要修改CS寄存器的內容。 指令格式 返回
微机原理及应用 16 无条件转移指令:JMP • 指令功能: 无条件转移指令可以转移到内存中存放的任何程序段。 指令必须指定转移的目标地址(或称转移地址)。无 条件转移指令不影响标志位。 • 指令分类: 段内转移和段间转移。段内转移只须改变IP寄存器的内 容,用新的转移目标地址代替原有的IP的值就可以。 段间则转到另一段去执行程序,因此,不仅要修改IP 寄存器的内容,而且还要修改CS寄存器的内容。 • 指令格式… 返回
微机原理及应用 17 无条件转移指令格式 指令格式: JMP LABEL (1)段内直接短转移:格式: JMP SHORT OPR; IP)(P)+8位移量;8位移量是一个带符号 数,转移范围在-128--+127 例如: JMP SHORT10H;转移地址偏移量在指令 中给出 (2)段內直接近转移:格式: JMP NEAR PTR OPR IP)(P)±16位移量16位移量是一个带符号 数,转移范围在段内任意位置 例如:JMP1000H;段内直接转移,转移地址偏 移量在指令中给出 下一页 返回
微机原理及应用 17 无条件转移指令格式 • 指令格式:JMP LABEL (1) 段内直接短转移:格式:JMP SHORT OPR ; (IP) (IP)+8位移量 ; 8位移量是一个带符号 数,转移范围在 –128--+127 例如:JMP SHORT 10H ; 转移地址偏移量在指令 中给出 (2)段内直接近转移:格式:JMP NEAR PTR OPR (IP) (IP)+16位移量;16位移量是一个带符号 数,转移范围在段内任意位置 例如:JMP 1000H ;段内直接转移,转移地址偏 移量在指令中给出 下一页 返回
微机原理及应用 18 无条件转移指令格式 (3)段内间接转移:格式: JMP WORD PTR OPR IP)(EA;EA值由oPR的寻址方式确定 它可以使用除立即数以外的任一种寻址方式。 例如: JMP X;段内间接转移,转移地址偏移 量由CX给出 (4)段间直接G远)转移:格式: JMP FAR PTR OPR; IP)oPR的段内偏移地址;(CS)OPR所在 段的段地址 例如:JMP2000:0100H;段间直接转移,转移段 地址和偏移量在指令中给出 下一页 返回
微机原理及应用 18 无条件转移指令格式 (3) 段内间接转移:格式:JMP WORD PTR OPR ; (IP) (EA); EA值由OPR的寻址方式确定。 它可以使用除立即数以外的任一种寻址方式。 例如:JMP CX ; 段内间接转移,转移地址偏移 量由CX给出 (4) 段间直接(远)转移 :格式:JMP FAR PTR OPR ; (IP) OPR的段内偏移地址; (CS) OPR所在 段的段地址 例如:JMP 2000:0100H ; 段间直接转移,转移段 地址和偏移量在指令中给出 下一页 返回
微机原理及应用 19 无条件转移指令格式 (5)段间间接转移: 格式: JMP DWORD PTR OPR; 〔IP)(EA)(CS)(EA+2) EA值由oPR的寻址方式确定。它可以使用除立即数以外 的任一种寻址方式。 例如: JMP DWORD PTRISI 段间间接转移,转移地址在SI,SI+1,SI+2 sI+3所指的内存单元中,前两个字节为偏移量,后两个 字节为段地址。 P91(参看例题) 返回
微机原理及应用 19 无条件转移指令格式 (5) 段间间接转移: 格式:JMP DWORD PTR OPR ; (IP) (EA) (CS) (EA+2) EA值由OPR的寻址方式确定。它可以使用除立即数以外 的任一种寻址方式。 例如: JMP DWORD PTR[SI] 段间间接转移,转移地址在SI,SI+1,SI+2, SI+3所指的内存单元中,前两个字节为偏移量,后两个 字节为段地址。 P91(参看例题) 返回
微机原理及应用 20 条件转移指令 条件转移指令是以某一个标志位的值或者某几个标志 位的值作为判断是否进行转移的依据,如果满足要求 则转移,否则执行后续指令。 条件转移指令可以分为以下几大类: 根据单个条件标志的设置情况转移 比较两个无符号数 比较两个带符号数 CX寄存器值判断 指令说明 返回
微机原理及应用 20 条件转移指令 • 条件转移指令是以某一个标志位的值或者某几个标志 位的值作为判断是否进行转移的依据,如果满足要求 则转移,否则执行后续指令。 • 条件转移指令可以分为以下几大类: 一、根据单个条件标志的设置情况转移 二、比较两个无符号数 三、比较两个带符号数 四、CX寄存器值判断 指令说明… 返回