第五章循环分支资料.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
80x86汇编语言程序设计 第5章基本控制结构 讲授要点 5.1分支结构 (一)、控制转移指令 1、无条件转移指令 基本格式:JMP TARGET 2、条件转移指令 基本格式:JXX OPR 。 JZ(或JE) OPR;结果为0(或相等)(ZF=1)时转移; JNZ(或JNE) OPR;结果不为0(或不相等)(ZF=0)时转移; JS/JNS OPR;结果为负/正(SF=1/0)时转移; JO/JNO OPR;结果溢出/无溢出(OF=1/0)时转移; JP(JPE)/JNP(JPO) OPR;奇偶位为偶/奇(PF=1/0)时转移; JC/JNC OPR;有/无借位(CF=1/0)时转移; 3、无符号数条件转移指令(4条) JB/JNAE OPR;两个无符号数a、b比较时,若a〈b时转移,(ZF=0 AND CF=1); JBE/JNA OPR;两个无符号数a、b比较时,若a≤b时转移;( ZF=1 OR CF=1) JA/JNBE OPR;两个无符号数a、b比较时,若a〉b时转移;( ZF=0 AND CF=0) JAE/JNB OPR;两个无符号数a、b比较时,若a≥b时转移(ZF=1 OR CF=0) ; 4、有符号数条件转移指令(4条) JG/JNLE OPR;两个带符号数a、b比较时,若a〉b时转移;((SF=OF)AND ZF=0) JGE/JNL OPR;两个带符号数a、b比较时,若a≥b时转移;((SF=OF) OR ZF=1 ) JL/JNGE OPR;两个带符号数a、b比较时,若ab时转移;((SF≠OF)AND ZF=0) JLE/JNG OPR;两个带符号数a、b比较时,若a≤b时转移;((SF≠OF)OR ZF=1) (二)、比较/测试分支程序设计 比较指令: 指令格式:CMP DEST,SRC; 执行操作:(DEST)-(SRC) 对标志的影响:OF、SF、ZF、AF、PF、CF 根据标志位判断源操作数和目的操作数的大小 测试指令: 指令格式:TEST DEST,SRC; 执行操作:(SRC)∧(DEST) 对标志位影响: SF、ZF、PF; 源操作数可为:通用寄存器、存储器或立即数。 目的操作数不能为立即数,源和目的操作数不能同时在存储器中。 分支结构程序流程: 例1:求三个无符号数中的最大值,只要把三个数据两两比较,用JA/JNB/JNA/JC等指令就可判断两数的大小,从而选出其中最大值。 DATA SEGMENT ARG DW 7138H,84A6H,29EH MAX DW ? DATA ENDS SSEG SEGMENT STACK STK DB 20 DUP (0) SSEG ENDS CODE SEGMENT ASSUME CS:CSEG,DS:DSEG,SS:SSEG START:MOV AX,DATA MOV DS,AX LEA SI, ARG MOV AX, [SI] MOV BX,[SI+2] CMP AX, BX JAE FMAX1 MOV AX, BX FMAX1 : CMP AX,[SI+4] JAE FMAX2 MOV AX,[SI+4] FMAX2 : MOV MAX,AX MOV AH,4CH INT 21H CODE ENDS END START 例2:设数据段中NUM1,NUM2两字节单元有无符号整数,编程完成: 1、若两个均是偶数,则两个数分别加1后送DA1、DA2字节单元中; 2、若两个均是奇数,则两个数分别送DA1、DA2字节单元中; 3、若一个是奇数,一个是偶数,则把奇数送DA1,偶数送DA2字节单元中; DATA SEGMENT NUM1 DB 45H NUM2 DB 0AEH DA1 DB ? DA2 DB ? DATA ENDS STACK1 SEGMENT PARA STACK STA DW 20H

文档评论(0)

文档资料 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档