您的位置:首页 > 其它

汇编之路-2

2016-03-18 00:25 190 查看
继昨晚之后的内容继续写,

7、CPU与存储器之间的交互

     CPU要运行与运算,必然就需要内存提供指令和数据,这就像是大脑活动思考,也需要心脏跳动提供血液和氧气是一样的道理;那么CPU是怎么找到自己需要的数据的呢,或者说CPU根据什么来找到自己需要的数据呢?就是内存的地址;当存储单元按相应顺序进行编号(也就是存储地址)之后,CPU会拿着这个编号找到数据或者指令,然后再取出指令或者数据

   那CPU在什么情况下会需要进行数据的交互,也就是数据的读写呢?

  1)存储单元的地址(地址信息)

  2)器件的选择,读或写的命令(控制信息)

  3)读或写的数据(数据信息)

  首先CPU要找到存储的数据,就要通过地址信息(通过地址线)搜索到对应的内存地址;其次它要对哪个器件进行何种操作,就要通过控制信息(通过控制线路)来控制;要进行读或写,就要通过数据信息(通过数据线路进行数据的传输进行写入或者读出)

所以,CPU是通过什么将地址、数据、控制信息这些数据传到存储器芯片上的呢?其实,上述也有提到了,如果是地址的话就通过地址总线找到对应的存储地址,如果是数据的话就通过数据总线,如果是控制信息的话就通过控制总线,那么接下来,模拟一下CPU如何进行一个读数据的过程

  


如图,这里假设地址数据是8位,存储数据为4位,首先,CPU在地址总线上发出00000011信号,同时在控制总线上发出读命令(我们假设读命令的数据表示为00001111),这个时候,CPU会通过寻址找到对应的内存地址,然后将数据读出,地址为00000011对应的数据是1011,此时,将1011通过数据总线读出;其实这里也跟上面所说的的一点知识有所对应,之前的文章有提到过,指令和数据在CPU中都是以二进制数据的形式存在,所以同样一段数据,就在于你把它用来干嘛,如果你把它放在地址线上,那它就是地址,把它放在控制线上,那它就是控制信号,把它放在数据线上,那它就是数据信号

8、地址总线

 经过上面的介绍,我们对地址线有了一定的认识,CPU是通过地址总线从而确定存储单元,那么你有可能就会想,地址总线是怎么来确定地址,这里会给出答案。总线可以传递的稳定状态只有两种:高电平,低电平,也就是1或0。那么10根总线就可以传送10位的二进制数据,也就是说可以有2的10次方种数据,也就是可以找到1024个地址,而地址线的宽度也是10

9、数据总线

对于数据总线,就是CPU与内存或其他器件的数据传送场所。数据总线宽度决定了CPU和外界的数据传送速度,8根数据线一次可以传送8位数据,也就是一个字节,而它的宽度也为8。假如16位数据,如果通过宽度为8的数据传送,需要两次,而宽度为16的传送的话则一次足矣,这也说明了数据总线宽度决定了CPU和外界的数据传送速度

10、控制总线

控制总线,CP
4000
U通过它对外部器件如内存、网卡、显卡等进行读写等控制;有多少根控制总线,就意味着CPU提供了对外部器件的多少种控制,所以控制总线的宽度决定了CPU对外部器件的控制能力
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: