CPU如何读取数据,执行命令

2021-02-04  本文已影响0人  天涯西剑

CPU如何读取数据?

如果取快递,我们会需要一个取件码,这个取件码对于CPU来说就是地址;

当地址为0x0001,CPU控制IBUS(代码总线)的电平使其呈现出现第一位为高电平,其他均为低电平,并且控制另外的读/写位为读,那么DBUS(地址总线)就会交出0x0001处的数据。

就像给了快递柜收件码,然后点取件,快递柜就会自动给出快递一样。

CPU写数据类似,不过使能写,就像点寄件一样。

CPU如何执行命令

我们可以取数据了,当然我们也可以取命令数据,以便CPU得知是用加法还是减法。类似取数据,我们也需要一个地址来取命令,这个地址一般由一个计数器给出。计数器从0x0000开始,不断增加。所以CPU从0x0000的地址开始取命令,然后从0x0001取命令,循环下去。。。

执行命令需要不仅需要命令,还需要数据。CPU会把第一个命令地址的数据当作操作命令,比如+,把第二个命令地址的数据当作数据1的地址,把第三个命令地址的数据当作数据2的地址。

比如命令地址的前三位里的数据为[0x0012,0x2000,0x2001],

  1. CPU读取到第一个地址数据为0x12,表示要做加法。
  2. CPU读取到第二个地址的数据为0x2000,表示为去0x2000的地方取数据,这里我们假设0x2000处的数据为1。
  3. CPU读取到第二个地址的数据为0x2001,表示为去0x2001的地方取数据,这里我们假设0x2001处的数据为2。

然后CPU就会计算得到1+2=3,那么3这个放到哪里呢,CPU会放到一个自己私有的地方先存着,以便之后需要的时候不用费劲去内存去拿了。

编程到底在编什么

再后来有人用C写了一个程序,这个程序可以解析1+2,但是不同与c的是,这个程序直接就显示1+2的结果到屏幕,而不是变成程序写入存储器执行。这个解析文本,并把结果直接显示出来,而不用重新写入到程序存储器的程序就叫做Python程序。

上一篇 下一篇

猜你喜欢

热点阅读