微机原理-ch3-part3精选.ppt

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * Kunming University of Science Technology Page * Thanks! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Kunming University of Science Technology Page * 4、段间直接(远)转移 格式: JMP FAR PTR PROG_F 操作: IP←PROG_F的段内偏移地址 CS←PROG_F所在段的段地址 例:有指令:JMP FAR PTR PROG_F,设标号PROG_F所在段的基地址为3500H,偏移地址为080AH,则指令执行后,有:IP=080AH,CS=3500H 即:程序转到3500H:080AH处执行。 Kunming University of Science Technology Page * 5、段间间接转移 格式:JMP DWORD PTR [MEM] 操作:IP←(MEM) CS←(MEM +2) 例:JMP DWORD PTR [DI+0125H] 执行前:CS=1200H,IP=05H,DS=2500H,DI=1300H,(26425H)=4500H,(26427H)=32F0H 执行后,程序转向何处? 解:因EA=SI+0125H=1425H,DI的默认段为数据段,有: DS:EA=2500H:1425H 故:IP=(26425H)=4500H CS=(26427H)=32F0H 即:程序将转到32F0H:4500H处执行。 Kunming University of Science Technology Page * (二) 条件转移指令 注:条件转移均为短转移,范围为-128~127 1、直接标志转移指令 格式:指令操作符 标号 操作:根据单个条件标志的设置情况转移,直接标志转移指令表。 Kunming University of Science Technology Page * 转移的标志情况 涉及5个标志位:CF, ZF, SF, OF, PF,及CX寄存器 Kunming University of Science Technology Page * 例:求AL和BL寄存器中的两数之和,若有进位则AH置1,否则AH清0,试编程实现。 解:… … ADD AL,BL JC NEXT MOV AH,0 JMP EXIT NEXT: MOV AH,1 EXIT: HALT Kunming University of Science Technology Page * 2、间接标志转移: [说明]:此类指令的助记符不直接给出标志状态位的测试条件,但仍以某一标志的状态或几个标志的状态组合作为测试的条件。 格式:指令操作符 标号 操作:判断测试条件是否成立,若成立则转移,否则,往下顺序执行。 对间接标志转移指令: 1、基本要求:记住指令的使用方法。 2、提高要求:会分析标志位的组合状态与转移条件之间的对应关系。 Kunming University of Science Technology Page * 转移的标志情况 Kunming University of Science Technology Page * 标志位的组合状态与转移条件之间的关系 分析举例:JA/JNBE指令 测试条件:CF?ZF=0 原理分析: 所以,只有当CF?ZF=0时,满足大于(不小于等于)的条件。 其它指令,依此类推。 Kunming University of Science Technology Page * 举例-间接标志转移指令的用法 例:以首地址为TABLE的10个内存字节单元中存放了10个带符号数,要求统计其中正数,负数,零的个数,并将结果分别存入PLUS,NEG,ZERO单元。 解:程序清单如下: DATA SEGMENT TABLE DB 01,49,-98,30, -98,-34,-67,23,34,00 PLUS DB 00H NEG DB 00H ZERO DB 00H DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: PUSH DS MOV AX,0 PUSH AX MOV CX,10 MOV BX,0 AGAIN:CMP TABLE[BX],0 JG

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档