微机原理与接口技术(3-4).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文档。上传文档
查看更多
微机原理与接口技术 五、控制转移指令 1.无条件转移和过程调用指令 表3-10无条件转移指令的类型和方式 2.条件转移指令 表3-11 直接标志条件转移指令 表3-12 间接标志条件转移指令 3.循环控制指令(Iteration Control) 4.中断指令(Iterrupt) 六、处理器控制指令 3.停机指令和空操作指令 §3-3 8086的指令系统 ——控制转移指令 ⑵间接标志转移 指令的助记符中不直接给出标志状态位的测试条件,而是标志的状态组合作为测试的条件。 指令应用:通常放在比较指令CMP之后,以比较两个数的大小。 无符号数比较测试指令中,指令助记符中的“A”是英文Above的缩写,表示“高于”之意,“B”是英文Below的缩写,表示“低于”之意; 带符号数比较测试指令中,指令助记符中的“G”(Great than)表示大于,“L”(Less than)表示小于。 §3-3 8086的指令系统 ——控制转移指令 大于/不小于等于 转移 大于等于/不小于 转移 小于/不大于等于 转移 小于等于/不大于 转移 (SF⊕ OF) ∨ZF=0 SF⊕ OF =0 SF⊕ OF =1 (SF⊕OF) ∨ ZF=1 JG/JNLE JGE/JNL JL/JNGE JLE/JNG 带符号数比较测试 高于/不低于等于 转移 高于等于/不低于 转移 低于/不高于等于 转移 低于等于/不高于 转移 指令功能 CF ∨ ZF =0 CF=0 CF=1 CF ∨ ZF=1 JA/JNBE JAE/JNB JB/JNAE JBE/JNA 无符号数比较测试 测试条件 指令助记符 类别 §3-3 8086的指令系统 ——控制转移指令 例 设某个学生的英语成绩已存放在AL寄存器中,若低于60分,则打印F(FAIL);若高于或等于85分,则打印G(GOOD);当在60分和84分之间时,打印P(PASS)。 程序: CMP AL,60 ;与60分比较 JB FAIL ;<60,转FAIL CMP AL,85 ;≥60,与85分比较 JAE GOOD ;≥85,转GOOD MOV AL,’P’ ;其它,将AL←’P’ JMP PRINT ;转打印程序 FAIL: MOV AL,’F’ ; AL←’F’ JMP PRINT ;转打印程序 GOOD: MOV AL,’G’ ; AL←’G’ PRINT: … ;打印存在AL中的字符 §3-3 8086的指令系统 ——字符串处理指令 例 假设某温度控制系统中,从温度传感器输入一个8位二进制的摄氏温度值。当系统中温度低于100度时,则打开加热器;当温度上升到100度或100度以上时,关闭加热器,进行下一步处理。设温度传感器的端口号为320H,同时假设控制加热器的输出信号连到端口321H的最低有效位,当将这一位置1时,加热器便打开,清0时则关闭加热器。 解:实现上述温度控制的程序如下: §3-3 8086的指令系统 ——字符串处理指令 GET_TEMP: MOV DX,320H ;DX指向温度输入端口 IN AL,DX ;读取温度值 CMP AL,100 ;与100度比较 JB HEAT _ON ;<100度,加热 JMP HEAT _OFF ;≥ 100度,停止加热 HEAT _ON: MOV AL,01H ;D0位置1,加热 MOV DX,321H ;加热器口地址 OUT DX,AL ;打开加热器 JMP GET_TEMP ;继续检测温度 HEAT _OFF: MOV AL,00H ;D0位置0,停止加热 MOV DX,321H OUT DX,AL ;关闭加热器 … ;进行其他处理 §3-3 8086的指令系统 ——控制转移指令 ▲是一组增强型的条件转移指令,控制程序段的重复执行,重复次数存于CX寄存器中。 ▲指令的字节数均为2,第一字节是操作码,第二字节是8位偏移量,转移的目标都是短标号。 ▲循环指令中的偏移量都是负值。 ▲循环控制指令均不影响任何标志。 这类指令共有4条。 §3-3 8086的指令系统 ——控制转移指令 (1)LOOP循环指令(Loop) 指令格式:LOOP 短标号 指令功能:控制重复执行一系列指令,重复次数放在CX寄存器中,每执行一次LOOP指令,CX自动减1。如果减1后CX≠0

文档评论(0)

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

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

1亿VIP精品文档

相关文档