欢迎来到天天文库
浏览记录
ID:24719982
大小:435.00 KB
页数:19页
时间:2018-11-14
《浙工大微机原理及应用ppt 第3章指令系统3》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、浙工大信息学院第三章指令系统3.2.5控制转移指令浙工大信息学院分支循环子程序中断浙工大信息学院分支转移指令1、无条件转移指令段内转移:只需改变IP段间转移:需改变CS、IP格式:JMP目标标号浙工大信息学院(1)段内转移段内直接转移:eg:JMP(NEARPTR)addr1短转移:-128~127近转移:±32k段内间接转移:eg:JMPBXJMPWORDPTR[BX](将转移目标地址放在寄存器或存储器的某2个连续单元中)浙工大信息学院(1)段间转移段间直接转移:eg:JMPFARPTRaddr1段间间接转移:eg:JMPDWORDPTR[BX]浙工大信息学院2、条
2、件转移指令概念:判断条件,满足,转移到目标地址,否则顺序执行条件:状态标志位CF、PF、ZF、SF、OF格式:JXX目标标号概念:所有的转移指令都是短转移,范围-128~127浙工大信息学院条件转移指令(1)根据单个标志位转移。用于测试某次运算结果ZFJZ/JEaddrJNZ/JNEaddrPFJPaddrJNPaddrSFJSaddrJNSaddrOFJOaddrJNOaddrCFJCaddrJNCaddr浙工大信息学院(2)两个无符号数比较。根据比较结果转移CMP+转移指令CMPA,B;A-B指令含义条件JA/JNBEaddrA>BCF=0ANDZF=0JAE/J
3、NBaddrA≥BCF=0ORZF=1JB/JNAEaddrABANDZF=0JGE/JNLaddrA≥BORZF=1JL/JNGEaddrA4、PZ目标标号循环条件:(CX)≠0且ZF=1LOOPNE/LOOPNZ目标标号循环条件:(CX)≠0且ZF=0浙工大信息学院JCXZ目标标号不对CX内容进行操作,只根据CX判断,在循环之前先判(CX)≠0,已防止初始化时(CX)=0…….例:JCXZNEXTLOP:……LOOPLOPNEXT:…浙工大信息学院举例已知有一个100个字节的数组,首元素偏移地址为0100h,要求从该数组中找出‘$’字符,并把‘$’字符前面所有元素相加,结果保留在AL中。浙工大信息学院4、子程序调用格式:CALL过程名功能:返回地址入栈,转入执行子程序与JMP相似,有4种寻址方式段内调用:返5、回地址的IP↓,后转移到子程序(直接,间接)段间调用:返回地址的CS↓,IP↓,后转移到子程序(直接,间接)浙工大信息学院(1)段内直接调用CALL(NEARPTR)PROCNAME说明:(SP)-2SPIP((SP)+1,SP)IP=(IP)+D16(2)段内间接调用CALLBX浙工大信息学院(1)段间直接调用CALLFARPTRPROCNAME说明:(SP)-2SPCS((SP)+1,SP)(SP)-2SPIP((SP)+1,SP)F-PROC的偏移地址IPF-PROC的段地址CS(2)段内间接调用CALLDWORDPTR[DI]浙工大信息学院返回6、指令与CALL想呼应,放于过程的出口作用:返回主程序,即返回地址出栈,继续执行主程序中CALL后的一条指令IP↑或IP↑CS↑浙工大信息学院格式:RETRETn;n位偶数,16位,执行完RET后,(SP)+nSP应用场合:当程序通过堆栈传递参数时,子程序用完参数后,返回时应当弹出堆栈作废,已保持堆栈的平衡。段内返回:IP↑段间返回:IP↑CS↑浙工大信息学院3.3.6处理机控制指令1、标志处理指令对CFCLCSTCCMC对DFCLDSTD对IFCLISTI2、其它处理指令NOPHLT浙工大信息学院作业P1213.55,3.85,3.88
4、PZ目标标号循环条件:(CX)≠0且ZF=1LOOPNE/LOOPNZ目标标号循环条件:(CX)≠0且ZF=0浙工大信息学院JCXZ目标标号不对CX内容进行操作,只根据CX判断,在循环之前先判(CX)≠0,已防止初始化时(CX)=0…….例:JCXZNEXTLOP:……LOOPLOPNEXT:…浙工大信息学院举例已知有一个100个字节的数组,首元素偏移地址为0100h,要求从该数组中找出‘$’字符,并把‘$’字符前面所有元素相加,结果保留在AL中。浙工大信息学院4、子程序调用格式:CALL过程名功能:返回地址入栈,转入执行子程序与JMP相似,有4种寻址方式段内调用:返
5、回地址的IP↓,后转移到子程序(直接,间接)段间调用:返回地址的CS↓,IP↓,后转移到子程序(直接,间接)浙工大信息学院(1)段内直接调用CALL(NEARPTR)PROCNAME说明:(SP)-2SPIP((SP)+1,SP)IP=(IP)+D16(2)段内间接调用CALLBX浙工大信息学院(1)段间直接调用CALLFARPTRPROCNAME说明:(SP)-2SPCS((SP)+1,SP)(SP)-2SPIP((SP)+1,SP)F-PROC的偏移地址IPF-PROC的段地址CS(2)段内间接调用CALLDWORDPTR[DI]浙工大信息学院返回
6、指令与CALL想呼应,放于过程的出口作用:返回主程序,即返回地址出栈,继续执行主程序中CALL后的一条指令IP↑或IP↑CS↑浙工大信息学院格式:RETRETn;n位偶数,16位,执行完RET后,(SP)+nSP应用场合:当程序通过堆栈传递参数时,子程序用完参数后,返回时应当弹出堆栈作废,已保持堆栈的平衡。段内返回:IP↑段间返回:IP↑CS↑浙工大信息学院3.3.6处理机控制指令1、标志处理指令对CFCLCSTCCMC对DFCLDSTD对IFCLISTI2、其它处理指令NOPHLT浙工大信息学院作业P1213.55,3.85,3.88
此文档下载收益归作者所有