资源描述:
《专接本汇编6(JMP,条件转移指令,LOOP指令).ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、控制类指令程序转移指令处理机控制指令1实例CODESEGMENT……MOVAX,1MOVBX,2ADDBX,AXJMPLOOPADDBX,4ADDBX,5……LOOP1:……CODEENDS程序中每条指令的寻址是由CS和IP决定的。让程序转移到另一个位置需要修改IP(段内转移/NEAR)或CS:IP(段间转移/FAR)如段内转移(-128-+127)则称为短转移,用SHORT来表示。2说明:段内转移和段间转移。①直接转移直接给出目标地址。②间接转移目标地址存放在寄存器或内存单元中,当通过寄存器间接转移时,只能完成段内间接转移3实例MOVAX,0
2、JMPNEXTMOVBX,0MOVCX,0NEXT:MOVAH,4CHINT21HMOVAX,0NEXT:MOVBX,0MOVCX,0JMPNEXTMOVAH,4CHINT21H说明:目标地址的计算以当前IP的值为中心,前移或者后移,称为相对转移。以新的值完全代替当前的IP值,称为绝对转移。在86系列中,所有的段内直接转移都是相对转移,所有的段内间接转移和段间间接转移都是绝对转移。4JMP无条件转移指令无条件转移指令的格式:JMP标号无条件转移指令跳转到指定的位置去执行程序,因此指令中必须给出转移位置的地址,即给出标号。分类段内直接转移,段内间
3、接转移段间直接转移,段间间接转移5段内直接转移无条件转移指令的格式:JMPNEAR-LABEl;(IP)+DISP(16位)IPNEAR-LABEl是一个近标号,相对位移量DISP范围在-32768-+32767之间.该标号在本段内使用.实例JMPNEXTANDAL,7FHNEXT:XORAL,7FH6段内直接短转移无条件转移指令的格式:JMPSHORT-LABEl;(IP)+DISP(8位)IPSHORT-LABEl是一个短标号,相对位移量DISP的范围是在-128-+127之间.该标号在本段内使用.实例JMPSHORTNEXTANDAL
4、,7FHNEXT:XORAL,7FH7段内间接转移无条件转移指令的格式:JMPREG16/MEM16;(IP)+DISP(16位)IP实例JMPSIJMP[BX]JMPWORDPTR[BP][DI]8段间直接转移无条件转移指令的格式:JMPFAR-LABEl;OFFSETIP标号是一个远标号,该标号在另一个代码段内9段间间接转移无条件转移指令的格式:JMPMEM32;(MEM32)IP;(MEM32+2)CS注意:段间的间接转移指令的操作数不能是寄存器10条件转移指令概述标号所有条件转移指令的目标操作数都是短标号。即转向的目标地址距转
5、移指令的下一条指令的第一个字节的相对位移量必须在-128到+127(一个字节所能表示的)范围之内。若条件满足,则将这个相对位移量加到指令指针寄存器IP上以实现其转移。所有条件转移指令对状态标志均无影响。11条件转移指令判断两个数大小的条件转移指令测试单个标志的条件转移指令12判断两个数大小的条件转移指令对于判断无符号数大小的条件转移指令,用“高于”和“低于”表示两个数的关系。对于判断带符号数大小的条件转移指令,用“大于”和“小于”表示两个数的关系。13判断无符号数大小的条件转移指令JA/JNBEJA指令(高于转移)JNBE指令(不低于等于转移)J
6、NA/JBEJNA指令(不高于转移)JBE指令(低于/等于转移)14判断无符号数大小的条件转移指令JAE/JNBJAE指令(高于/等于转移)JNB指令(不低于转移)JNAE/JBJNAE指令(不高于等于转移)JB指令(低于转移)15实例1.在BUF为首地址的内在单元中,存放两个数据34,78,求出最大值,存放在RESUlE的内存单元中.2.在BUF为首地址的内在单元中,存放三个数据34,78,11,求出最大值,存放在RESUlE的内存单元中.3.在BUF为首地址的内在单元中,存放五个数据34,78,11,98,2求出最大值,存放在RESUlE的内存单元
7、中.16判断有符号数大小的条件转移指令JG/JNLEJG指令(大于转移)JNLE指令(不小于等于转移)JGE/JNLJGE指令(大于等于转移)JNL指令(不小于转移)17判断有符号数大小的条件转移指令JL/JNGEJL指令(小于转移)JNGE指令(不大于等于转移)JLE/JNGJLE指令(小于等于转移)JNG指令(不大于转移)18测试单个标志的条件转移指令1.测试ZF--零标志1)JE/JZ指令JE(相等时转移)JZ(结果等于0时转移)2)JNE/JNZ指令JNE(不相等时转移)JNZ(结果不等于0时转移)19测试单个标志的条件转移指令测试CF--
8、进位标志JC/JNC指令1)JC当满足CF=1时,转移到目标地址。