CUP的寻址能力和数据总线传送数据的问题

来源:百度知道 编辑:UC知道 时间:2024/05/24 02:36:49
我是一个新学汇编的菜鸟,我在看王爽出的汇编,看到数据总线那里,怎天只是说什么空间,都没有具体实际的说,比如一个CUP的寻址能力是8KB,他的地址总线为什么是16怎么算,在书上都没有说怎么算,只是说2的N次方就是可以寻2的N次方的内存单元。还有数据总线的宽度为8跟,怎么算出一次传送数据为64KB~~~

我不知道是书上错了,还是你理解错了。你的那两个观点都是不对的啊。

地址总线的宽度是16,那么他的cpu寻址范围就是64k,而不是8kb。
具体原因和算法如下:
16根地址线,每一根都有高低两种状态的,分别表示二进制数1,0。
即可以表示:
0000'0000'0000'0000~1111'1111'1111'1111
每个数可以表示一个存储单元所对应的地址(内存里面1个存储单元是1字节(8位)每个字节对应有一个地址)
而上面一共2^16=65536个数,所以有65536(字节)=64KB的范围与之对应。
用16进制表示就是:
0000H~FFFFH

还有数据总线的宽度为8跟,一次传送数据就是1个字节啊,不是64kb的啊
具体原因如下:
按照时钟,首先是地址线上给出地址,正确寻址后才有数据线读或者写数据的。
像你这种16位地址线,8位数据线的机器,就是先有地址线给出16位地址,然后再由数据线在那个地址上写入或者读出数据。
一根数据线上面也是只能有高低电平两种状态,分别表示:0,1,也就是一根数据线一次只可以传输一位的数据(就是一个0,或者一个1),按照单位转换,8位=1字节,也就是说,数据总线的宽度为8跟,一次传送数据为1字节。而不是64kb。

学习汇编语言对于pc的硬件知识有一定要求的,你可以先学学数字电路和微机原理这两样,不然真有点费解的,特别是国内的一些教材,省略的太多了,一跳好几步,就一些老鸟教授级的看得懂……