中断程序是在中断事件发生时调用,程序也不知道什么时候有中断事件发生。子程序是在需要的时候调用,在程序里可以预见它的使用。
因为中断是由系统调用的,不知道什么时候中断,所以你可以选择允许中断或者不允许中断,这就好比你正在干工作时,电话铃响了,你可以选择接电话也可以选择不接电话,中断就好比电话铃,你不知道电话铃什么时候响起。开放中断就是允许中磨尘断,就好比电话铃响允许你接电话,禁止中断就是不允许中断梁消,就好比电话铃响不允许你接电话。子程序是条件调用的程序,你可以知道什么时候调用,子程序是为了优化程序结构。
简单一句,中断是随时发生的,时间不确定。而子程序则时间确定,跟系统设计顺序有关系,起简化、优化作用。用在随机事件,只是中断的一个应用。
有些中断的应用,其事件是可以预料,也能确定的,比如说定时。
子程序控制的内容与主程序是一样的,都是在扫描周期结束后才变化的,而中断就是马上去做,不等这个扫描周期结束 。
中断是指计算机运行过程中,出现某些橡游知意外情况需主机干预时,机器能自动停止正在运行的程序并转入处理新情况的程序,处理完毕后又返回原被暂停的程序继续运行。
计算机科学术语。指处理机处理程序运行中出现的紧急事件的整个过程。
程序运行过程中,系统外部、系统内部或者现行程序本身若出现紧急事件,处理机立即中止现行程序的运行,自动转入相应的处理程序(中断服务程序),待处理完后,再返回原来的程序运行,这整个过程称为程序中断当处理机接受中断时,只需暂停一个或几个周期而不执行处理程序的中断,称为简单中断。
中断又可分为屏蔽中断和非屏蔽中断两类。可由程序控制其屏蔽的中断称为屏蔽中断或可屏蔽中断。屏蔽时,处理机将不接受中断。反之,不能由程序控制其屏蔽,处理机一定要立即处理的中断称为非屏蔽中断或不可屏蔽中断。
非屏蔽中断主要用于断电、电源故障等必须立即处理的情况。处理机响应中断时,不需执行查询程序。由被响应中断源向CPU发向量地址的中断称为向量中断,反之为非向量中断。向量中断可以提高中断响应速度。
参考资料
编辑委员会.数学辞海.北京:中国科学技术出版社,2002
1、中断:指当出现需要时,CPU暂时停止当前程序的执行转而执行处理新情况的程序和执行过程。即在程序运行过程中,系统出现了一个必须由CPU立即处理的情况,此时,CPU暂时中止程序的执行转而处理这个新的情况的过程就叫做中断。
2、中断服务程或轮基序:处理器处理"急件",可理解为是一种服务,是通过执行事先编好的某个特定的桐尺程序来完成的,这种处理"急件"的程序被称为--中断服务程序。
3、中断是处理器一种工作状态的描述。我们把引起中断的原因,或者能够发出中断请求信号的来源统称为中断源。
1、中断的处理过程为:关中断(在此中断处理完成前,不处理其它中断)、保护现场、执行中断服务程序、恢复现场、开中断。
2、通常中断源有以下几种:
(1)外部设备请求中断。
(2)故障强迫中断。
(3)实时时钟请求中断。
(4)数据通道中断。
(5)程序自愿中断。
3、中断系统的功能中断系统应具有衫谨的功能可归结为中断处理和中断控制。
(1)中断处理。中断处理包括发现中断请求、响应中断请求、中断处理和中断返回。
(2)中断控制。中断控制主要是实现中断优先级的排队和中断嵌套。
4、防止方法
(1)声卡:一些早期的ISA型声卡,系统很有可能不认,就需要用户手动设置(一般为5)
(2)内置调制解调器和鼠标:一般鼠标用COM1,内置调制解调器使用COM2的中断(一般为3),这时要注意此时COM2上不应有其它设备
(3)网卡和鼠标:此问题一般发生在鼠标在COM1口,使用中断为3,这时要注意通常网卡的默认中断为3,两者极有可能发成冲突。
(4)打印机和EPP扫描仪:在安装扫描仪驱动程序时应将打印机打开,因为两个设备中串联,所以为了防止以后扫描仪驱动程序设置有误,一定要将打印机打开再安装扫描仪驱动程序。
(5) *** 作系统和BIOS:如果计算机使用了"即插即用" *** 作系统(例如win98),应将BIOS中PNP OS Installed设置为Yes这样可让 *** 作系统重新设置中断。
(6)PS/2鼠标和BIOS:在使用PS/2鼠标时应将BIOS中PS/2 Mouse Function Control打开或设置为Auto,只有这样BIOS才能将IRQ12分配给PS/2鼠标用。
IRQ的英文全称是Interrupt Request,翻译成中文就是尺乎“中断请求”,缩写为IRQ。IRQ主要是就外部设备而言的。声卡、调制解调器等外部设备,在一般情况下并不使用,也就是说,不占用CPU的工作时 间。当我们播放声音文件、上网时,声卡、调制解调器就会向 CPU发出申请,要求CPU分配一些工作时间给它们。租困改但这时往往 CPU正在进行其他工作,怎么办呢?这时“中断”弊判就起作用了。
CPU会给发出中断申请的外部设备一个中断号,也就是IRQ号 码,以后这个外部设备就使用这个中断号来工作,一旦有工作要求,CPU就会响应,暂时拿出一段时间为这个外部设备工作。 IRQ号码是分等级的,而且CPU一次只能响应一个中断请 求,如果有好几个设备不小心使用了同一个IRQ号码,系统就会出现问题。在DOS下声卡不能发声,多半就是IRQ号码分配得不对造成的。在Windows系统里,系统会自动为外部设备分配IRQ号,如果有冲突会自己进行调整,尽量满足要求,实在不行才会发出警告。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)