第9讲军微机原理.pptVIP

  1. 1、本文档共51页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9讲军微机原理

§3.4.6 控制传送指令 控制传送指令分为: 转移指令 条件转移指令 重复控制指令 调用和返回指令 过程指令 4)软件中断指令、溢出中断指令 中断(Interrupt): 有时当系统运行或程序运行期间遇到某些特殊情况, 需要计算机自动执行一组专门的例行程序来进行处理。 中断例行程序(或中断子程序)(Interrupt routine): 所执行的这组程序就称为中断子程序。 种类: 中断分为内部(软)中断和外部(硬)中断两种。 内部中断—如除法运算中除数为0、中断指令引起的中断。 外部中断—处理I/O设备与CPU之间的通信。 INTO检查溢出标志OF,如果OF=1,则启动一个类型4的中断过程;如果OF=0,不做任何操作。 通常INTO指令安排在有符号数算术运算指令后面。如 IMUL DX INTO ;若溢出,则启动INT 4,否则继续 MOV RESULT,AX MOV RESULT+2,DX …… 5) 中断返回指令IRET 本讲小结 本讲作业 段间调用步骤: 将调用指令后的第一条指令地址的CS入栈; 将调用指令后的第一条指令地址的IP入栈; 将调用目的地地址的段地址赋值CS; 将调用目的地地址的偏移地址赋值IP; 执行子程序,直至遇到RET指令; 将栈顶当前内容赋值IP; 将栈顶当前内容赋值CS; 返回主程序。 CALL far_proc ;far_proc为远过程的地址 指令的操作为: SP←(SP)-2 (SP)←(CS) ;CS压栈 SP←(SP)-2 (SP)←(IP) ;IP压栈 CS←段地址 IP←偏移地址 例:CALL 2000H:1000H 3)返回指令:RET 将当前堆栈内容返回到IP(段内调用)或IP,CS(段间调用),具体是段内调用还是段间调用由定义子程序的语句决定的。 RET n:从栈顶弹出返回地址后,SP+n?SP,n为偶数,即栈顶位置跳过n个字节。 返回地址后SP RET 4 SP+4?SP 4 段内返回指令RET的操作为: IP←(SP) ;栈顶内容弹出到IP SP←(SP)+2 段间返回指令RET的操作为: IP←(SP) ;栈顶内容弹出到IP SP←(SP)+2 CS←(SP) ;栈顶内容弹出到CS SP←(SP)+2 见教材p80 CPU响应一次中断自动完成三件事情: (PSW)入栈 — 保护现场, (CS),(IP)保存入栈 — 保留断点, 转中断例行程序去执行。 中断返回时: 恢复(IP)、(CS)及(PSW) 中断向量:中断例行程序入口地址。 IBM-PC中,存储器的最底地址00000H——003FFH为中断向量区, 存放256种类型中断例行程序入口地址, 每个中断向量占4个单元。 中断指定类型号N × 4——取得指定类型的中断向量地址。 例:中断类型9, 9 × 4=36 00024H——00027H单元中放中断向量。 格式: INT n ;n=0~255,为中断类型号 本指令的操作步骤为: ①(SP)←(FLAGS),SP←(SP)-2 ; FLAG 入栈 ②IF←0,TF←0 中断服务程序中禁止外部INTR中断和单步中断 ③(SP)←(CS),SP←(SP)-2,CS←(n*4+2) 中断服务程序的段地址送入CS。n*4为向量地址。该向量 地址中的内容即为中断服务程序入口地址。 ④(SP)←(IP),SP←(SP)-2,IP←(n*4) 中断服务程序的偏移地址送IP。 INT指令只影响IF和TF, 对其余标志位无影响。 INT指令可用于调用系统服务程序,如INT 21H MOV AH,2 INT 21 INT软件中断 INTO溢出中断 用于从中断服务程序返回被中断的程序。 任何中断服务程序不管是外部中断引起的,还是内部中断引起的,最后都要用IRET返回。 该指令执行的操作为: IP←(SP) ;栈顶内容弹出到IP SP←(SP)+2 CS←(SP) ;栈顶内容弹出到CS SP←(SP)+2 FLAGS←(SP) ;栈顶内容弹出到FLAG SP←(SP)+2 见教材p80 5. 过程指令 (1)BOUND (2)ENTER (3)LEAVE 自学 见教材p80 用一条指令实现对一串数据或字符的操作,字符或数据的个数在CX中,每执行一次CX自动减1,直至减到零串操作自动停止; 源操作数在D

文档评论(0)

181****7126 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档