中断服务程序的最后一条指令是RET或RETI对吗?

中断服务程序的最后一条指令是RET或RETI对吗?,第1张

指令是RET,RET是程序返回指令,返回到调用该子程序处的下一条指令执行,返回的地址是从RET执行前的SP中最后两个值。

DELAY:MOV R7,#250 (6)250-->R7。

D1:MOV R6,#250 (7)250--->R6。

D2:DJNZ R6,D2 (8)(R6-1),等于零执行下一条,不等于零,则跳转到D2。

DJNZ R7,D1 (9)(R7-1),等于零执行下一条,不等于零,则跳转到D1。

扩展资料:

RET分辨率增强技术的意思。有RET功能的打印机,可以使打印出来的图形几乎没有锯齿,一台400×400DPI的激光打印机,如果有RET功能,其打印效果可以与600×600DPI的激光打印机想媲美。

但是CS值不变,即CS一直指向code segment这个段(这个功能是通过assume cs:code实现的),程序转移到code segment段的开头的第一条语句,即mov ax,4c00h,然后调用int 21h结束程序。

RETI 是中断返回指令;

RET 是子程序返回指令;

RETI比RET多一步清除中断优先级状态位,让同级别的中断有机会得到响应。

中断指令“RETI”做为中断跳出指令除了将堆栈中保存着的地址取出,送回PC;使程序从主程序的中断处继续往下执行的作用外,还有将“优先级生效”触发器清零的功能。

在单片机中返回指令有RET、RETI或者跳转指令SJMP或LJMP。

RET是一般子程序返回指令,执行该指令,会自动d出被保护的地址给PC指针。

RETI是中断服务程序返回指令,执行该指令,除了d出被保护的地址指针给PC外,还会恢复影响中断的一些标志位,比如定时器中断的TFn标志。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7770166.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-09
下一篇 2023-04-09

发表评论

登录后才能评论

评论列表(0条)

保存