原创
关于地址线寻址的个人理解总结(转)
2007-10-10 18:05
4284
6
7
分类:
通信
一、地址总线由N个地址导线组成:
首先需要知道什么是地址线,所谓地址线也就是传送地址信息的导线,传输地址线的所有导线的集合叫做地址总线,大家知道网线吧,一根网线里边有8根电缆,同样的,地址总线就是几根地址导线组成的。
二、一个地址线能表示1和0两个数:
这几根电缆有一个特性,就是其中的任意一根都只可以传送高电平(强电流?)和低电平(弱电流?),所以呢,也就只能表示0和1,也就是说,一根地址线只能表示1和0。
三、地址总线是地址线的集合:
地址总线嘛,当然传输的数据是地址,注意这里是地址总线传输的是地址信息,单一的地址线表示不了地址信息(除非你的地址总线就1根地址线),所有地址线组合成的数据是一个地址信息。
四、地址总线表示的数字的个数是能够寻找多少个内存单元,表示的内容就是地址数据本身:
好了,现在知道了,一个地址总线由N个地址线组成,一个地址线能表示1和0两个数,2个地址线能表示4个数(具体哪四个数先不管),3个地址线能表示8个数,SO,N个地址线能表示的数据的个数就是N个2相乘,也就是2的N次方个数。这个需要理解一下。
譬如一个地址总线由6根地址线组成,那么他的地址线的最大寻址范围是2的6次方,也就是64个内存单元。
下面做两个题目,一个地址总线的最大寻址范围是64KB,那么他有______根地址线。
现在需要理解的是,这个64KB就是64K个内存单元(64KB就是64K个BYTE,一个BYTE就是一个内存单元),知道了这个,也就好理解了,2的几次方个内存单元=64K个内存单元,64KB=64*1024=65536byte,答案就是16。
16根地址线所表示的地址数据的本身占据的内存是16个位,为什么是16位,因为你每个地址线占一个位置,你的表示的数据范围就是从
0000000000000000-1111111111111111
所以,具有16根地址线的系统要在内存中寻出一个地址要用2个内存单元来表示(一个内存单元有8位)。
五:地址与内存的关系:
关于内存与地址线的设计问题,可能大家会想到这个,这两个是不是应该有什么关系才可以,要知道的是,不管是什么系统,所有的内存的一个单元都是占据8个bit,那么,你的地址线要能在内存中储存,是不是地址线的个数需要什么限制,我的理解是需要是8的整数倍。
CPU中的寄存器与地址线的个数应该是一致的,也就是地址线有16条,那么CPU中的寄存器也是16位的。
用户1450824 2007-10-23 20:29