微机原理课件第7讲.ppt

  1. 1、本文档共69页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 8086的寻址方式和指令系统 串处理指令 ①MOVS字符串传送指令 ①MOVS字符串传送指令 ②CMPS字符串比较指令 ②CMPS字符串比较指令 ③SCAS字符串扫描指令 ③SCAS字符串扫描指令 ④LODS取字符串指令 ⑤STOS存字符串指令 控制转移指令 控制转移指令(28条) 无条件转移和过程控制指令 ①JMP无条件转移指令 ①JMP无条件转移指令 ①JMP无条件转移指令 ①JMP无条件转移指令 ①JMP无条件转移指令 段内间接转移指令 ①JMP无条件转移指令 段间直接(远)转移指令 ①JMP无条件转移指令 段间间接转移指令 过程调用及返回指令 过程:程序中能完成特定功能而又独立的模块,也称子程序。 过程嵌套:在过程运行中又去调用另一个过程。 过程调用和返回指令的格式:CALL 过程名 RET 近过程调用:调用指令CALL和被调用的过程在同一代码段中。 远过程调用:两者在不同代码段中。 ②CALL过程调用指令 ③RET过程返回指令 ④RET n过程返回指令 ④RET n过程返回指令 过程调用与返回指令 过程调用与返回指令 CALL段内直接调用 CS=2000H,IP=1050H,SS=5000H ①SP ?SP-2,即新的SP=0100H-2=00FEH; ②返回地址IP入栈。返回地址应该为CALL执行完后的地址,即IP=IP+3=1053H,将此数入栈; ③计算程序入口地址IP=IP+DISP=1053+1234=2287H。 过程调用与返回指令 过程调用与返回指令 过程调用与返回指令 条件转移指令 直接标志转移指令 在指令助记符中直接给出标志状态的测试条件:以标志的10种状态为判断的条件。 直接标志转移指令 间接标志转移指令 指令的助记符中不直接给出标志状态位的测试条件,而是标志的状态组合作为测试的条件。 指令应用:通常放在比较指令CMP之后,以比较两个数的大小。 无符号数比较测试指令中 指令助记符中的“A”——Above,“B”——Below; 带符号数比较测试指令中,指令助记符中的 “G”(Great than)表示大于, “L”(Less than)表示小于。 间接标志转移指令 间接标志转移指令 条件循环控制指令 条件循环控制指令 ①LOOP循环指令 ②LOOPE/LOOPZ相等或结果为零时循环指令 ③LOOPNE/LOOPNZ不相等或结果为不零时循环指令 ④JCXZ若CX为0跳转指令 中断指令 中断 中断 中断 专用中断 ①INT n软件中断指令 ②INTO溢出中断指令 ③IRET中断返回指令 处理器控制指令 标志控制指令 外部同步指令 ①ESC换码指令 ②WAIT等待指令 ③LOCK封锁总线指令 停机指令和空操作指令 停机指令和空操作指令 TEST 设CS=1200H,IP=0100H,SS=5500H,SP=0400H,DS=2000H,SI=3000H,BX=0300H,(20300H)=4800H,(20302H)=00FFH,PROG_N标号的地址为1200:0278H,PROG_F标号的地址为3400:0ABCH。说明下面每条指令执行完后程序将分别转移到何处执行? ①JMP PROG_N ②JMP BX ③JMP [BX] ④JMP FAR PROG_F ⑤ JMP DWORD PTR[BX] 小结 串处理指令的分类及具体功能 无条件转移指令的功能 直接标志转移指令的功能(重点) 其他指令的功能介绍 本节作业 LOCK封锁总线指令 (Lock BUS) 是一种前缀,加在指令的前端,用来维持8086的总线封锁信号LOCK#有效,带有LOCK前缀的指令在执行过程中,禁止其它协处理器使用总线。 HLT停机指令 (Halt) CPU进入暂停状态,不进行任何操作。下列情况发生时,CPU才脱离暂停状态: 在RESET线上加复位信号; 在NMI引脚上出现中断请求信号; 在允许中断的情况下,在INTR引脚上出现中断请求信号; NOP空操作指令 (No Operation) 单字节指令,执行时需耗费3个时钟周期的时间,但不完成任何操作。常在循环等操作中增加延时,或在调试程序时使用空操作指令。 用途 调用过程的主程序通过堆栈向过程传递参数。 参数在调用过程前推入堆栈,过程运行中通过堆栈指针寻找; 过程返回时,用RET n

文档评论(0)

157****7682 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档