【发布时间】:2014-08-16 02:42:18
【问题描述】:
我想知道,处理器如何知道何时停止执行程序。或者更确切地说,何时停止“获取、解码执行”循环。
我想过不同的方法,但不确定哪一种是正确的,或者它们是否都错了。
1- 也许最后有一条特殊指令由汇编程序自动添加,让处理器知道这是结束。
2- 当它到达无效内存时(但它是如何识别的)。
3- 它循环并重新运行程序,但它又是如何识别何时循环的,或者它可能是由汇编程序自动添加的。
4- 或者它根本不会停止,它会一直运行下去。 (但是那个功率不是低效吗?
请指教。
如果答案可能因处理器而异,让我们以 MIPS 和 x86 为例。
谢谢。
【问题讨论】:
-
MIPS 怎么样?我似乎找不到类似的指令。我找到了“break”,但它说它是为了调试。
-
通常程序不会停止处理器。他们告诉操作系统他们已经完成了,以便操作系统可以运行下一个程序。
标签: assembly x86 mips processor