条件转移课件

上传人:公**** 文档编号:568465617 上传时间:2024-07-24 格式:PPT 页数:29 大小:214KB
返回 下载 相关 举报
条件转移课件_第1页
第1页 / 共29页
条件转移课件_第2页
第2页 / 共29页
条件转移课件_第3页
第3页 / 共29页
条件转移课件_第4页
第4页 / 共29页
条件转移课件_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《条件转移课件》由会员分享,可在线阅读,更多相关《条件转移课件(29页珍藏版)》请在金锄头文库上搜索。

1、汇汇编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址址方方式式2. 条件转移指令条件转移指令1 1简单条件转移指令简单条件转移指令2 2无符号数条件转移指令无符号数条件转移指令3. 3. 有符号数条件转移指令有符号数条件转移指令 它们都有通用的语句格式和功能。它们都有通用的语句格式和功能。语句格式语句格式: : 操作符操作符 opropr功能:如果条件满足,功能:如果条件满足, 则(则(IPIP)位移量)位移量IPIP。存储器存储器OPOPXXXXJZ+15+15MOVXXXXIPIPCSCSIPIP1汇汇编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址址方方式式1 1

2、)简单条件转移指令简单条件转移指令助记符助记符转移条件转移条件功功 能能JE/JZJE/JZZF=1ZF=1相等相等/ /等于等于0 0转移转移JNE/JNZJNE/JNZZF=0ZF=0不相等不相等/ /不等于不等于0 0转移转移JSJSSF=1SF=1为负转移为负转移JNSJNSSF=0SF=0为正转移为正转移JOJOOF=1OF=1溢出转移溢出转移JNOJNOOF=0OF=0未溢出转移未溢出转移JCJCCF=1CF=1进位位为进位位为 1 1 转移转移JNCJNCCF=0CF=0进位位为进位位为 0 0 转移转移JP/JPEJP/JPEPF=1PF=11 1的个数为偶数转移的个数为偶数转

3、移JNP/JPOJNP/JPOPF=OPF=O1 1的个数为奇数转移的个数为奇数转移2汇汇编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址址方方式式控制转移指令控制转移指令- -例例例例 :根据加法运算的结果:根据加法运算的结果, ,做不同的动作做不同的动作n或者或者nadd ax, tempnjnz action1nnaction_1: nnaction_2:n add ax, tempadd ax, tempwjzjz action_2action_2 wwaction_1action_1:MOV MOV w . .waction_2:action_2: ADD ADD 3汇汇

4、编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址址方方式式条件转移指令条件转移指令2)2)比较两个比较两个无符号无符号数数, ,并根据比较的结果转移并根据比较的结果转移JBE(JBA) (CFJBE(JBA) (CF ZF)=1 ZF)=1 无符号数无符号数JNBE(JA) (CFJNBE(JA) (CF ZF)=0 ZF)=0 无符号数无符号数3 3)比较两个比较两个带符号带符号数数, ,并根据比较结果转移并根据比较结果转移JL(JNGE) (SF JL(JNGE) (SF OF)=1 OF)=1 有符号数有符号数JNL(JGE) (SF JNL(JGE) (SF OF)=0 O

5、F)=0 有符号数有符号数JLE(JNG) (SF JLE(JNG) (SF OF)OF)vZFvZF = 1 = 1 有符号数有符号数JNLE(JG) (SF JNLE(JG) (SF OF)OF)vZFvZF = 0 = 0 有符号数有符号数 Above -大于大于 Blow - 小于小于 Great -大于大于 Low - 小于小于4汇汇编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址址方方式式带符号数带符号数/ /无符号数比较无符号数比较必必须须区区分分有有符符号号和和无无符符号号指指令令的的适适用用情情况况, ,否否则则会出现错误会出现错误. .例如例如: AX=1111

6、1111,BX=00000000: AX=11111111,BX=00000000CMP AX,BXCMP AX,BX无符号数无符号数 1111111( 1111111(255255) ) 00000000(00000000(0 0) )有符号数有符号数 1111111( 1111111(-1-1) ) 000000000(000000000(0 0) ) 无符号数比较时无符号数比较时, ,nCF=1CF=1有借位有借位 =nCFCFVZF=1 VZF=1 VZF=0 5汇汇编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址址方方式式带符号比较的情况带符号比较的情况SF=1 SF=1

7、 符号为负符号为负, OF=1 , OF=1 有溢出有溢出 SF OF SF SF OF SF OF OF A 0 0 0 (A 0 0 0 (大于大于) )B 0 1 1 (B 0 1 1 (小于小于) )C 1 0 1C 1 0 1D 1 1 0D 1 1 0-32768 +327678000 7FFFFFFF 0001-1 +1负溢负溢正溢正溢负数负数正数正数6汇汇编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址址方方式式控制转移指令控制转移指令- -测试测试CXCX4)4)测试测试 CX CX 的值为的值为 0 0 则转移指令则转移指令JCXZ CX JCXZ CX 寄存器

8、为寄存器为0 0则转移则转移格式格式: JCXZ OPR : JCXZ OPR JECXZ JECXZ OPR OPR ECX ECX 寄存器的内容值为寄存器的内容值为 0 0 则转移指令则转移指令格式格式: JECXZ OPR : JECXZ OPR 测试条件(测试条件(ECXECX)=0=07汇汇编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址址方方式式控制转移指令控制转移指令- -例例mov ax,xmov ax,xcmp ax,50cmp ax,50jg jg too-hightoo-highsub ax,ysub ax,yjo jo overflowoverflowjns

9、 jns nonnegnonneg neg axneg axnonnegnonneg : : mov result,axmov result,axtoo_hightoo_high: : overflowoverflow: : 例例: : 设设X,YX,Y均均为为存存放放在在X X和和 Y Y单单元元中中的的1616位位操操作作数数, ,先先判判断断X50X50否?否?如如果果满满足足条条件件则则转转移移到到TOO-HIGHTOO-HIGH去去执执行行。然然后后做做X-YX-Y;如如溢溢出出则则转转移移到到OVERFLOWOVERFLOW去执行。去执行。否否则则计计算算|X-Y|X-Y|,并并把

10、把结结果果存入存入RESULTRESULT中。中。8汇汇编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址址方方式式控制转移指令控制转移指令例例 3.65 3.65 a,ba,b为为两两个个双双精精度度数数, ,分分别别存存储储于于DX,AXDX,AX及及AX,CXAX,CX中中. .要要求求编编制制一一程程序序使使ABAB时时转转向向X X转转向向, ,否则转否则转Y Y执行执行, ,程序如下程序如下: : CMP DX,BX CMP DX,BX JG JG X X JL JL Y Y CMP AX,CX CMP AX,CX JA JA X XY: Y: X: X: 0000 00

11、010000 00011111 11111111 1111-1-10000 00100000 00101111 11011111 1101-2-29汇汇编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址址方方式式例:例:3.783.78Cx=n bx=0 di=0 si=0Arraybx0?INC diINC siArraybx=BXAX=BX,转移到,转移到NEXTNEXTXCHGXCHGAXAX,BXBX;若;若AXBXAXBX,交换,交换NEXTNEXT:返回本节返回本节23汇汇编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址址方方式式3.6 3.6 中断指令中断指

12、令2 2中断返回指令中断返回指令IRETIRETw语句格式:语句格式:IRETIRETw功能:功能:(SPSP)IP IP w (SPSP) CSCSw (SPSP) FLAGS FLAGS 1 1中断调用指令中断调用指令INTINT语句格式:语句格式:INT nINT n功能:功能:(FLAGSFLAGS)(SPSP),),0 IF0 IF、TFTF。 (CSCS) (SPSP),(),(4*n+24*n+2) CSCS。 (IPIP) (SPSP),(),(4*n4*n) IPIP。中断中断中断服务中断服务中断反回中断反回24汇汇编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址

13、址方方式式3.7 处理机控制类指令处理机控制类指令3.7.1 3.7.1 标志位设置指令标志位设置指令返回本章首页返回本章首页1 1进位标志操作指令进位标志操作指令2 2方向标志操作指令方向标志操作指令3 3中断标志操作指令中断标志操作指令3.7.2 CPU3.7.2 CPU状态控制指令状态控制指令25汇汇编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址址方方式式CLC CF = 0CLC CF = 0CMC CF =CMC CF =STC CF = 1STC CF = 1CLDCLD DF = 0 DF = 0STDSTD DF = 1 DF = 1CLICLI IF = 0 I

14、F = 0 (cpu(cpu不不识识别别中中断断请请求求线线上上的的外外部部中中断断请请求求信号信号, ,屏蔽中断屏蔽中断) )STISTI IF = 1 ( IF = 1 (取消中断屏蔽取消中断屏蔽) )标志位设置指令标志位设置指令CFCF26汇汇编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址址方方式式CPUCPU状态控制指令状态控制指令NOP NOP 无操作无操作 ( (留出富余空间留出富余空间) )HLT HLT 停停 机机 ( (使使cpu cpu 进进入入暂暂时时停停机机状状态态, ,等等待待外外部部中中断断的的到来到来) ) WAIT WAIT 等等待待 ( (循循环

15、环等等待待中中断断, ,中中断断执执行行后后, ,回回到到等等待待状状态态, ,作用与硬件状态同步作用与硬件状态同步) )ESC ESC 换码换码 ( (使别的处理器能从使别的处理器能从LOCK LOCK 封封锁锁 ( (与与其其它它指指令令联联合合时时使使用用, ,维维持持总总线线锁锁存存信信号号, ,起协同工作的作用起协同工作的作用) )BOUND BOUND 界限指令界限指令ENTER ENTER 建立堆栈帧指令(建立堆栈帧指令(286286以后机用)以后机用)27汇汇编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址址方方式式本章重点本章重点各种寻址方式各种寻址方式学会使用汇

16、编语言的各种命令学会使用汇编语言的各种命令如何判断溢出(有符号数和无符号数)如何判断溢出(有符号数和无符号数)符号扩展的含义符号扩展的含义压缩的和非压缩的压缩的和非压缩的bcdbcd码的调整指令码的调整指令串操作时,不同前缀的结束重复条件的区别串操作时,不同前缀的结束重复条件的区别比较大小时,有符号数和无符号数的判断条件比较大小时,有符号数和无符号数的判断条件28汇汇编编语语言言程程序序设设计计3章章指指令令系系统统和和寻寻址址方方式式THANK YOU VERY MUCHTHANK YOU VERY MUCH本章到此结束,本章到此结束,谢谢您的光临!谢谢您的光临!返回本章首页返回本章首页结结 束束29

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号