电子与通信技术

简述“RET”与“RETI”指令的区别。

题目

简述“RET”与“RETI”指令的区别。

参考答案和解析
正确答案: 1)RET是子程序返回指令,RETI是中断服务程序返回指令;
2)RETI在返回时会清除有关中断标志位,而RET不具有此功能。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

执行中断返回指令RETI,会从堆栈取出数作为地址送给()。

A.DPTR

B.PSW

C.PC

D.Rn


参考答案:C

第2题:

如果在子程序中进行了现场保护,那么子程序中()。

  • A、恢复现场在RET指令之前
  • B、恢复现场在RET指令之后
  • C、直接用RET指令返回
  • D、直接用JMP指令返回

正确答案:A

第3题:

中断服务程序以中断返回指令RETI结束。()

此题为判断题(对,错)。


正确答案:正确

第4题:

在执行中断返回指令IRET和过程(子程序)返回指令RET时,具体操作内容有什么区别?


正确答案: (1)过程调用转向称为过程的子程序,而中断调用是转向中断服务子程序;
(2)过程调用可以是 NEAR 或 FAR 类型,能直接调用或间接调用,中断调用通常是段间间接转移到服务程序;
(3)过程调用只保护返回地址,中断指令还要保护状态标志进栈。

第5题:

CALL指令和RET指令都()条件码。


正确答案:不影响

第6题:

指出RET和IRET两条指令的区别,并说明各用在什么场合?


正确答案:(1)RET和IRET是两条返回主程序的指令,但RET是与过程(子程序)调用指令CALL对应使用的过程返回指令,而IRET是与中断指令INT n对应使用的中断返回指令。
(2)RET指令应安排在子程序的出口,即子程序的最后一条指令处,它的功能是从堆栈顶部弹出由CALL指令压入的断点地址值IP或CS、IP,迫使CPU返回到调用程序的断点去继续执行。
(3)IRET指令总是安排在中断服务程序的出口处,由它控制从堆栈中弹出程序断点送回CS和IP中,弹出标志寄存器内容送回F中,迫使CPU返回到断点继续执行后续程序。

第7题:

CALL指令和RET指令对堆栈操作,正确的说法为()。

  • A、CALL指令从堆栈中取出子程序的地址
  • B、RET指令从堆栈中取出子程序的地址
  • C、CALL指令从堆栈中取出断点的地址
  • D、RET指令从堆栈中取出断点的地址

正确答案:D

第8题:

执行中断返回指令RETI,从堆栈弹出地址送给()。

A.PSW

B.PC

C.DPTR

D.Rn


参考答案:B

第9题:

下面是关于汇编语言程序中使用RET的描述,不正确的是()。

  • A、每一个子程序中允许有多条RET指令
  • B、每一个子程序结束之前一定要有一条RET指令
  • C、每一个子程序中只允许有一条RET指令
  • D、以过程形式表示的代码段,一定有RET指令存在

正确答案:C

第10题:

简述指令语句和伪指令的区别?


正确答案:指令语句能产生目标代码,伪指令不能产生目标代码。