简述中断过程和调用子程序过程的异同。

如题所述

【答案】:中断过程实际上是CPU从执行当前主程序转到执行为外设服务的子程序,因此从这个角度来看,是中断过程一个调用子程序的过程。所以,子程序中的断点与现场保护、断点与现场恢复等概念在中断服务子程序中都是存在的。但中断过程与子程序调用还是有很大差别的:首先,调用子程序的过程是一个无条件过程,程序中只要有CALL语句,就一定能够实现主程序向子程序的转移,但中断过程的中断服务程序的调用一般是有条件的,比如当CPU处于关中断状态下,非屏蔽中断请求就不可能实现从当前正在执行的主程序向中断服务程序的转移;其次,子程序调用在整个程序执行中的位置是固定的,只有有CALL语句的地方才会发生调用过程,但对于硬件中断过程,只要条件满足,在整个程序执行的任意一时间点都有可能发生从主程序向中断服务子程序的转移事件。也就是说,硬件中断产生的调用过程是随机的,不可预测的。
温馨提示:答案为网友推荐,仅供参考