第一章:基础知识03
让编程改变世界
Change the world by program
上节课我们知道CPU是如何进行数据读写的。可是我们如何命令计算机进行数据的读写呢? 对于8086CPU,下面的机器码能够完成从3号单元读数据: 机器码: 101000000000001100000000 含义:从3号单元读取数据送入寄存器AX CPU接收这条机器码后将完成上面所述的读写工作。
地址总线
CPU是通过地址总线来指定存储单元的。 地址总线上能传送多少个不同的信息,CPU就可以对多少个存储单元进行寻址。 那么,地址总线如何发送地址信息呢? [caption id="attachment_233" align="aligncenter" width="247"]
地址总线[/caption] 一个CPU有N根地址总线,则可以说这个CPU的地址总线的宽度为N。 这样的CPU最多可以寻找2的N次方个内存单元。 CPU与内存或其它器件之间的数据传送是通过数据总线来进行的。 数据总线的宽度决定了CPU和外界的数据传送速度。 我们来分别看一下它们向内存中写入数据89D8H时,是如何通过数据总线传送数据的:
8位数据总线上传送的信息
[caption id="attachment_234" align="aligncenter" width="287"]
8位数据总线上传送的信息[/caption]
16位数据总线上传送的信息
[caption id="attachment_235" align="aligncenter" width="272"]
16位数据总线上传送的信息[/caption]
控制总线
CPU对外部器件的控制是通过控制总线来进行的。在这里控制总线是个总称,控制总线是一些不同控制线的集合。 有多少根控制总线,就意味着CPU提供了对外部器件的多少种控制。 所以,控制总线的宽度决定了CPU对外部器件的控制能力。
控制总线上发送的控制信息
[caption id="attachment_236" align="aligncenter" width="272"]
控制总线上发送的控制信息[/caption] 前面所讲的内存读或写命令是由几根控制线综合发出的: 其中有一根名为读信号输出控制线负责由CPU 向外传送读信号,CPU 向该控制线上输出低电平表示将要读取数据; 有一根名为写信号输出控制线负责由CPU向外传送写信号。 [buy]
获得所有教学视频、课件、源代码等资源打包 [/buy] [Downlink href='http://kuai.xunlei.com/d/LVTYODSIDTCU']视频下载[/Downlink]