好吧,这是非常令人困惑的我,对大会的每个教程说,有数目较少内置于CPU的,寄存器那么,如果我创建了使用寄存器来计算,这样的程序:CPU如何在有限数量的寄存器中同时运行多个应用程序?
global _start
section .text
_start:
reStrt: ; Label, Restart...
MOV ah, 0 ; Initialise ah to 0
INC ah ; ah++ [OR] ah=1
JMP reStrt ; Unconditional jump to label "reStrt"
后使用子系统:CONSOLE组装和链接此代码,我将启动它,并将看到永不退出的程序。
要关闭它,我们必须按下控制台窗口的[X]按钮,并且在本程序运行的同时,使用寄存器ah增加1并减少1,我再次启动该应用程序,现在同一个程序在同一时间运行2次。
但是这怎么可能呢?如果AH寄存器是CPU中的一个,那么两个程序如何共享该寄存器,但是不会与另一个共享一个值? B'cause我甚至没有创建一个变量(标签)来存储内存(RAM)的值。另外,如果有数百个寄存器但应用程序被限制使用每个寄存器的一个副本,那么我怎么能说我的计算机可以处理多少进程?
你不需要大写这么多的单词。 – 2015-01-21 06:11:00