中断响应过程中,为什么要保护现场?如何保护?

 我来答
ATF144X
2011-06-03 · TA获得超过1.2万个赞
知道大有可为答主
回答量:5344
采纳率:77%
帮助的人:4584万
展开全部
如果在中断服务程序中要占用一些寄存器进行运算,而在主程序中这些寄存器也是很重要的,为了二者互不干扰,所以在进入中断服务程序时就要保存寄存器的数值,以便在从中断返回后继续正常的往下执行,这种保存寄存器数值的过程就是现场保护。

如在8086处理器中,当发生中断时,主程序的指令位置(CS和IP)就必须进入堆栈保存,必要时还要保存所有通用寄存器的数值。当退出中断后,恢复CS和IP以及其他寄存器的数值到和中断执行前的一样,以便程序继续执行。
清诚声发射
2023-09-13 广告
因为被中断的进程照理应该不会意识到中断的存在, 如果中断改变了这个进程的运行环境(主要是寄存器和cpu各种状态),那么这个进程就可能运行出错, 所以中断就需要把自己会影响到的地方事先保存起来,等退出之前恢复, 这就叫现场保护。 悬索桥吊索、... 点击进入详情页
本回答由清诚声发射提供
451106852
推荐于2016-12-01
知道答主
回答量:41
采纳率:0%
帮助的人:10万
展开全部
为了使子程序调用之后顺利返回主程序继续运行,调用子程序也是响应中断的一个目的,假如不保护现场,在调用完子程序之后可能无法返回主程序继续运行,轻则运行结果出错,重则程序瘫痪,保护现场一般都是使用堆栈进行保护工作,对应的命令有push 和pop ,两个命令一定要对应
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
邝清霁邹葳
2020-02-16 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:26%
帮助的人:601万
展开全部
每次要保护断点,保护现场需用多条指令,每条指令要有取指和履行时间.这对个高速并中断响应,周.⑴⑵在中断要求和中断响应进程中,他们是如何配合工作的?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式