技术论坛

 不通的ob之间切换,累加器的值是如何保存的疑问

返回主题列表
作者 主题
冬日
奇侠

经验值:8561
发帖数:3432
精华帖:56
楼主    2024-01-09 15:59:56
主题:不通的ob之间切换,累加器的值是如何保存的疑问

比如在ob1执行

L MD0

L MD4

----------

+R

那么我们知道这个时候累加器1/2的值分别为md4和md0.

那么当其他的中断需要执行的时候,假如刚好在划线那里执行了其他ob的程序,并且修改了累加器的值。那么切换回来ob1的时候,累加器的值是如何恢复的?

If anything can go wrong, it will.
lu_zhao_long
侠圣

经验值:2033
发帖数:210
精华帖:4
3楼    2024-01-09 17:46:24
精华帖  主题:回复:不通的ob之间切换,累加器的值是如何保存的疑问

这个问题,建议你看一下 “堆栈” 的工作原理。在发生中断的时候,CPU 先把寄存器内的值推入 堆栈。等到中断返回的时候,再把 堆栈中保存的值 再重新调入 各个寄存器,继续执行程序。


您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。