−⑴ 子程序的执行是由程序员事先安排好的(由一条调用子程序指令转入),而中断服务程序的执行则是由随机的中断事件引起的;
−⑵ 子程序的执行受到主程序或上层子程序的控制, 而中断服务程序一般与被中断的现行程序毫无关系;
−⑶ 不存在同时调用多个子程序的情况,而有可能发生多个外设同时请求CPU为自己服务的情况。