- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理与接口技术-第3章-指令系统
* 4.过程调用指令 主程序可用调用指令调用子程序,子程序执行结束后自动返回主程序,主程序继续执行。 * (1)调用指令 根据子程序所在的位置,调用指令分为段内调用和段间调用。段内调用只修改IP的值,段间调用CS和IP的值都被修改。 如: CALL DELAY CALL指令在执行时第一步首先保存断点,以便子程序返回主程序时从断点处继续执行;第二步取出子程序的入口地址赋给IP或CS:IP,转去执行子程序。 * CALL NEAR DELAY ;DELAY是子程序名,NEAR是属性说明符,说明DELAY子程序与这条CALL指令在同一个代码段中,NEAR可以省略。 这种CALL指令最常见,也称为段内直接调用。 * 指令格式:CALL OPRD 功能:调用OPRD指明的子程序。 说明:OPRD可以是子程序的名字或指令标号,可以是16位的寄存器,还可以是两个或4个存储单元的内容。 * CALL AX ;子程序的入口地址由AX提供,即IP=AX。 CALL WORD PTR [BX] ;子程序的入口地址由[BX]指明的两个内存单元提供。 这两条指令也称为段内间接调用。 * CALL FAR MEM ;MEM是子程序名,FAR是属性说明符,说明MEM子程序与这条CALL指令不在同一个代码段中,FAR不能省略。 ;指令执行时首先将当前CS和IP的内容压栈,然后将MEM入口地址的段基址取出来赋给CS,将偏移地址取出来赋给IP,程序就转移到子程序执行。 这种CALL指令较常见,也称为段间直接调用。 例如: CALL 2000H:0100H ;指令直接给出子程序的段基址和偏 ;移地址。 * CALL DWORD PTR [SI] ;子程序的入口地址由[SI]指明的4个内存单元提供,其中 IP [SI+1]:[SI],CS [SI+3]:[SI+2]。 这条指令也称为段间间接调用。 * (2)返回指令 返回指令放在子程序的末尾,它能返回调用程序。返回指令的操作是弹出断点地址,送给IP和CS。返回指令与CALL指令有关联,如果是段内调用,返回指令只弹出IP的值;如果是段间调用,返回指令弹出IP和CS的值。虽然包含的操作不同,但返回指令的格式却一样。返回指令不影响标志位。 指令格式:RET 功能:返回调用程序。 * 【例题3-21】观察下面的程序段,了解子程序与主程序的关系。 MOV SP,4000H CALL DELAY ;调用子程序 DISP: MOV AH,02H MOV DL,A INT 21H HLT DELAY PROC NEAR ;子程序开始 PUSH CX MOV CX,2FFFH SUBS: LOOP SUBS POP CX RET DELAY ENDP ;子程序结束 * 5. 中断指令 中断,是指在程序执行过程中,出现某种紧急事件,CPU暂停执行现行程序,转去执行事件处理程序,执行完后再返回到被暂停的程序继续执行。引起中断的事件称为中断源,计算机的中断源可能是某个硬件部件,也可能是软件,中断指令就是软件中断源。 * (1)中断指令 指令格式: INT n INTO 功能:中断调用。调用过程类似子程序的远调用。首先暂停主程序的执行,将FLAGS、CS和IP(断点)顺序压栈,再根据n从中断向量表中找到中断服务程序的入口地址,前两个字节送IP,后两个字节送CS,就进入中断服务程序并开始执行。 * 说明:n为中断类型码,取值范围0~255。 INTO为溢出中断,相当于INT 4指令。 中断指令具体的执行过程很复杂,如下: ①FLAGS压栈 ②FLAGS中的TF置0,IF置0,禁止中断 ③CS压栈 ④IP压栈 ⑤查中断向量表,nX4作为地址,从该地址中取出中断服务程序的入口地址送CS:IP。 * (2)中断返回指令 指令格式:IRET 功能:中断返回 说明:所有中断服务程序中的最后一条指令都是IRET,它的具体操作如下: ①弹出IP ②弹出CS ③弹出FLAGS * 3.3.6 处理器控制指令 这类指令用来对CPU进行控制,如修改标志寄存器、CPU暂停、CPU与外部设备同步等; 1、标志位操作指令; CLC ;CF置0 STC ;CF置1 CLD ;DF置0 STD ;DF置1 CLI ;IF置0 STI ;IF置1 2、外部同步指令: HLT ;暂停,等待外部中断; NOP ;仅消耗3个时钟周期的时间,用于延时; WAIT ;CPU每隔5个时钟周期检查一次TEST引脚,当它为高电平时,CPU进入等待状态;该指令主要用于8088与
您可能关注的文档
最近下载
- 设备生产培训.pptx VIP
- 学生公寓维修改造工程施工组织设计施工方案投标文件(技术方案).doc
- 铁路概论基础知识题库单选题100道及答案.docx VIP
- 交警大队事故处理委托书模板.docx VIP
- (高清版)DB23∕T 3915—2024 汉麻提取加工生产设施管理指南.pdf VIP
- 2024年浙江省镇海中学自主招生数学试卷及答案 .pdf VIP
- 高考化学一轮专项复习讲义-价层电子对互斥模型、杂化轨道理论及应用(含解析).pdf VIP
- 2025年3完整版_中考英语核心高频688词 【背诵版】 .pdf VIP
- 矩阵的乘法运算省名师优质课赛课获奖课件市赛课一等奖课件.pptx VIP
- 医疗机构药事管理与风险防范.pptx VIP
文档评论(0)