微机原理与接口技术3-9控制转移指令.ppt

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
例:对于 CALL WORD PTR [SI]这条指令 若:(DS) = 8000H,(SI) = 1200H 则指令操作图示如下。 CALL IPH IPL 代码段 数据段 81200H 81201H ③段间直接调用 子程序的段地址和偏移地址直接由CALL指令给出。 格式:CALL FAR_PROC ;FAR_PROC为远过程的地址 指令的操作: ((SP)-1,(SP)-2)←(CS) ;原CS压栈 SP←(SP)-2 CS←新段地址 ((SP)-1,(SP)-2)←(IP) ;原IP压栈 SP←(SP)-2 IP← 新偏移地址 例:CALL 2000H:1000H ④段间间接调用 子程序的段地址和偏移地址为存储器的连续4个单元中的内容。 格式:CALL mem32 指令的操作为: ((SP)-1,(SP)-2)←(CS) ;原CS压栈 SP←(SP)-2 CS←(mem32+2) ((SP)-1,(SP)-2)←(IP) ;原IP压栈 SP←(SP)-2 IP←(mem32) 例:CALL DWORD PTR[DI] 调用地址在[DI],[DI]+1,[DI]+2,[DI]+3四个存储单元中。低字内容为偏移地址,高字内容为段地址。 CALL 代码段 数据段 IPH IPL CSH CSL [DI] [DI]+1 [DI]+2 [DI]+3 CALL DWORD PTR [DI] (2)返回指令RET 段内返回指令RET的操作为: IP←((SP)+1,(SP)) ;栈顶内容弹出到IP SP←(SP)+2 段间返回指令RET的操作为: IP←((SP)+1,(SP)) ;栈顶内容弹出到IP SP←(SP)+2 CS←((SP)+1,(SP)) ;栈顶内容弹出到CS SP←(SP)+2 另有一种带立即数返回指令:RET n 其中n为偶数,表示从栈顶弹出地址后另外丢弃的字节数。 例:RET 4 ;返回后再丢弃栈顶的4个字节 4 中断控制指令 8086/8088 CPU在程序中允许安排一条中断指令来引起一个中断过程,这种中断叫内部中断,或叫软中断。 中断指令共有三条: (1)INT n 执行类型n的中断服务程序,N=0~255 (2)INTO 执行溢出中断的中断服务程序; (3)IRET 从中断服务程序返回调用程序。 (1)INT n ;n=0~255,为中断类型号 本指令的操作步骤为: ①((SP)-1,(SP)-2)←(FLAGS),SP←(SP)-2 保护标志寄存器的内容 ②IF←0,TF←0 中断服务程序中禁止外部INTR中断和单步中断 ③((SP)-1,(SP)-2)←(CS),SP←(SP)-2,CS←(n*4+2) 中断服务程序的段地址送入CS。n*4为向量地址。该向量地址中的内容即为中断服务程序入口地址。 ④((SP)-1,(SP)-2)←(IP),SP←(SP)-2,IP←(n*4) 中断服务程序的偏移地址送IP。 INT指令只影响IF和TF, 对其余标志位无影响。 INT指令可用于调用系统服务程序,如INT 21H。 (2)溢出中断INTO INTO检查溢出标志OF, 如果OF=1, 则启动一个类型4的中断过程;如果OF=0,不做任何操作。 通常INTO指令安排在有符号数算术运算指令后面。如: IMUL DX INTO ;若溢出,则启动INT 4,否则继续 MOV RESULT, AX MOV RESULT+2, DX …… (3)中断返回指令IRET 用于从中断服务程序返回到被中断的程序。任何中断服务程序不管是外部中断引起的, 还是内部中断引起的, 最后都要用IRET返回。 该指令执行的操作为 IP←((SP)+1,(SP)) ;栈顶内容弹出到IP SP←(SP)+2 CS←((SP)+1,(SP)) ;栈顶内容弹出到CS SP←(SP)+2 FLAGS←((SP)+1,(SP))

文档评论(0)

676200 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档