|
主题 : : 何为CPU的寻址能力,表示这个能力的单位是什么? [待解决] |
回复[ 142次 ]
点击[ 9457次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2008-11-23 03:06 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-11-22 23:22 |
CPU的寻址能力不就是CPU能够寻址的个数么?
它的地址总线的宽度决定了它的寻址能力。
总线宽度为N,则寻址能力位2^N
可是2^N=?KB 似乎不能表达吧……所以想到此,我觉着此题没有表达准确。
我知道8b = 1B (八个二进制位等于一个字节)
2^(3+10)b=1KB
在检测题一中:
1个CPU的寻址能力为8KB,那么它的地址总线的宽度为___. 答案是13
8KB=2^13B=2^13*8b=2^16b 也就是2^16个二进制位,也就是总线有2^16根组成,
想到此,我觉着答案为2^16
首先,我觉着这个题本身出的就有问题,因为寻址能力指的是能够寻址的个数,是一个整数,没有单位,或者单位是“个” 可是这个题中,如果答案为13,则把B看成了寻址能力的单位,也就是说寻址能力是**个字节。如果答案为2^16,则把b看成了寻址能力的单位,这样也不对,而要把“个”看成寻址能力的单位,只能是:
8KB能表达的数的个数为:
1B=8b 8个二进制数能表示的数为:2^8
8KB=2^13B=2^13*B=2^13*2^8=2^21 个数,也就是说由21个二进制位(也就是说需要总线由21根组成)才能表达8KB描述的数。所以总线宽度为21.
请高手指点一下……我糊涂了。 | | |
|
|
|
|
[第1楼]
[ 回复时间:2008-11-23 10:35 ]
[引用]
[回复]
[ top ] | |
荣誉值:472
信誉值:12
注册日期:2007-10-16 15:34 |
楼主分析的不错,不过确忽视了一个知识点。
地址总线决定了cpu可以对多少个存储单元进行寻址。而微型计算机存储器的存储单元可以存放一个字节(1.6)。这也就对应了楼主的这句话“如果答案为13,则把B看成了寻址能力的单位”。
楼主继续加油啊~ | | |
|
|
|
|
[第2楼]
[ 回复时间:2008-11-23 19:22 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-11-22 23:22 |
回复:[第1楼]
------------------
谢谢你的回复。不过我觉着寻址能力这个名字似乎翻译的不太好吧……这个名字似乎应该理解为能够寻到的地址的个数……,而其真正的意思是 其能够寻找到的地址所能表达的数据容量。 | | |
|
|
|
|
[第3楼]
[ 回复时间:2008-11-24 10:30 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:6
注册日期:2008-11-24 09:56 |
我也刚开始学汇编。
因为LZ的这个问题也困惑了好久。
在网上找了很多答案
还是感觉这个答案是最好的,就是在这里找到的,呵呵
不是自己说的。借用别人
地址总线宽度即地址总线的条数,本题要求CPU有多少根地址总线。
1位10进制有10个数字表示方式:0、1、2 ... 9,共10个数,即10^1。2位10进制可以有10^2种表示方式:0、1、2 ... 99。N位10进制有10^N种表示方式。
N位二进制可以有2^N种表示方式。
一根地址总线对应一位二进制数字。每根总线和二进制数字一样有两种状态,0和1。
N根地址线可以有2^N种表示方式。
地址总线的一种组合状态对应一个存储单元,即寻址1Byte的能力。
在2^N中,N是地址总线的条数。所以当2为底数时,指数是几即地址总线条数是几。
8KB=(2^3 * 2^10)B=2^13 B
指数为13,所以地址总线宽度为13 | | |
|
|
|
|
[第4楼]
[ 回复时间:2008-12-27 18:30 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-12-27 12:20 |
应该是指寻址单元吧。书上[1.8]节说“现在我们知道,CPU是通过地址总线来指定存储器单元的。”
我认为答案应该是
8K
=8*1024
=8192-1(例:2的10次方个。最小数为0,最大数为1023)
=1111111111111(二进制)
=13根
按数据量算的话
8K
=8*1024*8
=65535-1
=1111111111111111(二进制)
=16根 | | |
|
|
|
|
[第5楼]
[ 回复时间:2009-01-05 12:13 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-12-22 22:42 |
|
|
|
|
|
[第6楼]
[ 回复时间:2009-01-06 20:05 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-11-26 05:23 |
回复:[贴 主]
------------------
顶一下!
今天开始学汇编
在做这道题时,也很糊涂
望哪位老师能详细的讲解一下
万分感谢!!! | | |
|
|
|
|
[第7楼]
[ 回复时间:2009-01-07 04:50 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-01-02 02:55 |
能力是没有单位的吧,它应该是个词,呵呵,语文不好,也不知是形容词,还是其他什么词,不管是什么词,反正不是一个量,你能说高兴有单位麽,你如果一定要给能力安个单位,那么它放在不同的地方就会有不同的单位.比如一台机器做功能力,一个人有其他各方面的能力,比如办事能力,还有什么诸如车的制动能力等等,发现没有,能力前面都有个词,功,办事,制动.....它们和能力这个词是个整体,主角不是能力这个词,而是功,办事,制动,做功能力是有大小的,单位是焦耳,焦耳是针对功的,可不是针对能力的.回到你的问题,何为CPU的寻址能力,表示这个能力的单位是什么?这不是一样麽?单位是针对寻址的,不是针对能力的,寻址是个内存空间,这个空间是逻辑空间,cpu的办事能力很强(呵呵,能力无处不在呀),能做很多种不同的事情,其中之一就是管理内存空间,我们需要的信息就存放在这个空间里,这个空间能摆放多少个字节,是由地址总线的条数确定的,其中的道理3楼都说了,至于字节的单位,有时候说是多少个,有时候说是多少B,那是从不同的角度去表示内存的大小的,个是从逻辑的角度去说的,可以把内存看做是由一个一个的大小相同,顺序摆放的盒子,任何电脑中,只要是内存,这个盒子大小都是一样的,而B,是从物理结构上划分的,内存最小的结构是位(能表达两种电状态通和断,相当于1和0),8个顺序的位组成一个最小的存储单位B(字节),cpu管理的最小存储单位就是字节,我们可以把每一个字节看做是一个大小相同的盒子.用样是1KB
1KB的存储器有1024个存储单元
1KB的存储器可以存储1024个字节(Byte)
1KB=1024Byte
1个cpu的寻址能力为1KB
这是我对这个问题的理解,语文水平差,词不达意,不知道我想表达的说清楚没有,希望大家指正. | | |
|
|
|
|
[第8楼]
[ 回复时间:2009-01-07 18:46 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:5
注册日期:2008-12-18 16:07 |
|
|
|
|
|
[第9楼]
[ 回复时间:2009-01-10 01:45 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:0
注册日期:2008-10-12 14:20 |
我也来吹吹水吧:
我觉得楼主是确实有点晕了.
首先,如你所说:地址总线的宽度决定了它的寻址能力.地址总线的宽度其实就是地址总线的根数,即有几根,是数量.
寻址能力就是说CPU能寻找得到多少个地址,是范围.
如果只有两根地址线,它们能表达的不同地址有多少个?__是00,01,10,11 共4个,表示为2的2次方,即可用2的N(N代表地址线的数量)次方表示.
同理可推,如果是有13根地址总线,则可以表示的不同地址个数为2的13次方个,即是8192个.OK,现在,这8192个地址其实就是8192个字节,因每个字节都有一个地址嘛.8192Byte转换一下其实就是8KB
现在楼主可明白,1个CPU的寻址能力为8KB,那么它的地址总线的宽度为___.这个题,要解的方程式只是:2的N次方=8KB(即8192个字节),把N求出来就OK啦
每种CPU可寻找(或说搜索)到的地址的个数是不同的,越先进的U越....这不是能力是什么,"寻址能力"这个词有什么错呢?
再说句题外话,王爽的书,写的是老古董8086的,大家在做题时不要总觉得什么可寻址能力太小而怀疑自己的判断,事实是老古董就是那样差劲的,不要拿现在的4核CPU去跟8086比.这样说,是因为我也曾困惑过. | | |
|
|
|
|
[第10楼]
[ 回复时间:2009-01-10 01:48 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:0
注册日期:2008-10-12 14:20 |
再啰嗦一下:
楼主把比特位都牵扯进来了,寻址时的最小单位是字节,即Byte,不是Bit.注意一下
说到比特,啊,冒险王比特太好看了,可惜只有两部,每三部什么时候出呀?真郁闷死了 | | |
|
|
|
|
[第11楼]
[ 回复时间:2009-01-11 20:21 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-01-02 02:55 |
我认为9楼说的很好,我也再次说一下吧.现在我已经看到第四章了,对于这个问题的“理解能力”,是受到我现在所掌握到的知识所限制的。随着以后的学习,相信我对这方面的理解会更加全面,更加深入的,受语言“表达能力”的限制,也许我不能完全表达我的心中所想,但我现在说出来是希望大家能讨论一下,在搜肠刮肚自圆其说的过程中,不也是对自己的一次总结和提高么,我们的目的是为了正确的理解所学到的知识,寻求本质,请高手不吝赐教.
对于楼主的疑问,我认为牵扯到两个方面的知识,一个是文学方面的,一个是专业方面的知识。能力这个词属于文学方面的,关于它的含义楼主可以查看新华词典,寻址是属于专业方面的知识,这两个方面的知识你都懂了,你才能正确的理解“寻址能力”这个词组的真正含义。cup能处理很多事情,它能处理什么事情,是由制造它们的厂商确定的,做这些不同工作方面的能力,也是由它的物理结构所限制的,比如cpu在寻址方面的能力,就是由它有多少根地址线决定的。首先要清楚,我们所说的寻址,是本着cpu而言的,没有了cpu,内存也就什么也不是了,什么字节了,字了等等都是没有意义的,内存本身就是一些能保存两种电信号的电子元件和为了配合cpu的管理而存在的一些电子器件和它们之间互相联系的通道,字节、字、栈等等都是cpu管理本身看起来毫无规律杂乱无章的内存而建立的一整套虚拟的模型,并且在制造cpu的时候实现了这种管理模式,就像一大群新生来到学校,他们站在一起毫无规律,是管理者把他们分成了一个一个班,一个一个年级,每个班有多少人,一个年级有几个班,是由管理者根据实际情况决定的,就像字节,如果7位(位在内存里实际就是一个能体现或者保存两种状态通和断的电子元件)更符合规律,更适于管理,那么一个字节就是7位,同理字节也可以是8位,9位,10位等等,但实际上8位更符合2进制和2种电信号的对应和管理,对cpu来说它是作为一个个体存在的,所以cup在管理内存方面的功能就是按照这个整套模型制造的。地址总线是一个n条地址线组成的,每一条地址线实际上就是一根导线,一根导线能传送的稳定状态只有两种,通和断,具体实现就是高电平和低电平,它的效果就是是电子器件通或断,用二进制表示就是1和0,一根是2种状态,2根导线的组合呢,就是4种状态,3根的组合呢,就是8种状态,4根导线的组合呢?。。。。依此类推,就是有2的n次方种状态,n是导线的根数,每一种状态对应一个2进制数,关键的地方是,在任意时刻,地址总线是作为一个整体而存在的,所有的地址线状态的组合构成了一个地址总线的状态,且只有这一个状态,它对应的是内存空间中的一个内存单元(这个单元不一定是最小单元字节),地址总线所能管理的内存空间的范围是由它的地址线的根数确定下来的,如果内存空间很大,超出了地址总线的范围,那么对于cpu而言,那些超出范围的地址空间是不存在的。
说明一下,有些是我自己的推断,写这些东西与其说是对楼主说的,不如说这是给我自己看的,不管怎么说,希望这些对楼主能有所帮助。 | | |
|
|
|
|
[第12楼]
[ 回复时间:2009-01-12 14:56 ]
[引用]
[回复]
[ top ] | |
荣誉值:169
信誉值:0
注册日期:2008-08-19 16:07 |
|
|
|
|
|
[第13楼]
[ 回复时间:2009-01-14 15:20 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-01-14 14:45 |
|
|
|
|
|
[第14楼]
[ 回复时间:2009-01-17 01:39 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-10-27 13:37 |
可能楼主同各个位大侠有一点不太明确!!
我在这里说说:1b是指一个2进制信息,1B是指一个含有8个2进制信息的数据存储单元;地址总线与数据总线的含义不一样,地址总线是指CPU通过“N”条通信线路寻找到“2的N次方”个存储单元。正如题中所说,要拥有8KB的地址寻址能力就要CPU可以找到8K个存储单元(即8KB),这就需要13条地址总线!
不知道我说的是否有错呢? | | |
|
|
|
|
[第15楼]
[ 回复时间:2009-01-17 12:38 ]
[引用]
[回复]
[ top ] | |
荣誉值:337
信誉值:0
注册日期:2008-01-01 17:48 |
|
|
|
|
|
[第16楼]
[ 回复时间:2009-01-25 02:48 ]
[引用]
[回复]
[ top ] | |
荣誉值:1
信誉值:0
注册日期:2009-01-25 01:18 |
地址以Byte编号,不是bit编号
8KB=8* 1024B=2^13 B
so,地址总线宽度为13 | | |
|
|
|
|
[第17楼]
[ 回复时间:2009-02-17 16:38 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:4
注册日期:2009-01-15 22:41 |
|
|
|
|
|
[第18楼]
[ 回复时间:2009-02-20 13:04 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-02-20 12:52 |
|
|
|
|
|
[第19楼]
[ 回复时间:2009-02-21 14:03 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-02-21 13:35 |
13根线就有2^13个寻址,就有2^13个储存单元(一个存储单元有8位,即1b)。所以就有2^13/1024kb了。 | | |
|
|
|
|
[第20楼]
[ 回复时间:2009-02-22 00:32 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-02-20 19:29 |
|
|
|
|
|
[第21楼]
[ 回复时间:2009-03-05 14:06 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-03-05 13:33 |
|
|
|
|
|
[第22楼]
[ 回复时间:2009-03-10 10:21 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-10-22 16:14 |
在内在中,一个存储单元为一个字节(8个二进制位组成),CPU对内存单元的寻址是以字节为单位的,而不是以二进制位为单位的,所以CPU的地址总线根数决定了能找到多少个字节,比如有13根地址总线,则可以找到2^13个字节,即8*1024个字节(也即8KB),而数据总路线的宽度决定了能够一次传送多少个二进制位(也可换算成字节),比如有8根数据总线,则一次可以传输8个二进制位(也就是1个字节)的信息.两者是有区别的.所谓计算机的字长也就是说明CPU一次能够传输多少个二进制位(或多少个字节)的数据 | | |
|
|
|
|
[第23楼]
[ 回复时间:2009-03-11 12:52 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-03-11 10:14 |
寻址的能力 即寻址范围 所以2^10B=1KB,然后2^3=8 所以地址总线的宽度为10+3 = 13 | | |
|
|
|
|
[第24楼]
[ 回复时间:2009-03-13 13:10 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-03-12 11:28 |
|
|
|
|
|
[第25楼]
[ 回复时间:2009-03-13 17:09 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-08-21 22:38 |
|
|
|
|
|
[第26楼]
[ 回复时间:2009-03-15 17:11 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-03-14 20:28 |
CPU寻址能力 地址总线宽度
首先一条地址线所发出的指令只能是0或者1,那么多少条就可以是2^n个信号, 然后这个信号就代表一个地址,,
其次 一个地址代表一个存储单元,,然而一个存储单元里面存储8个bit即1Byte 这个问题8KB的寻址能力是指CPU可以控制8KB的内存容量 那当然是2^地址总数*1B=8KB 这样8*1024=2^13所以地址总线宽度是13.... | | |
|
|
|
|
[第27楼]
[ 回复时间:2009-03-15 19:38 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-09-15 21:00 |
|
|
|
|
|
[第28楼]
[ 回复时间:2009-03-16 12:59 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-03-16 10:57 |
|
|
|
|
|
[第29楼]
[ 回复时间:2009-03-27 21:27 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:0
注册日期:2009-03-27 20:52 |
晕,,那是寻址单位的个数,,是个数啊,,大哥,,你干吗要转化成bit的,,那不就给人家扩大8背了吗。。。。 | | |
|
|
|
|
[第30楼]
[ 回复时间:2009-03-30 10:07 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-03-30 01:42 |
|
|
|
|
|
[第31楼]
[ 回复时间:2009-04-03 11:42 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-04-02 03:57 |
看了这么多讨论,我觉得其实是教材讲得太简单了。否则不会出现这么多人在激烈讨论这一题。如果一本教材要做成自学教材,最基本的地方要十分直白才行。 | | |
|
|
|
|
[第32楼]
[ 回复时间:2009-04-03 12:26 ]
[引用]
[回复]
[ top ] | |
荣誉值:337
信誉值:0
注册日期:2008-01-01 17:48 |
回复:[第31楼]
------------------
还有一个情况就是学习的人并没有认真看书上的每一句话。
我觉得是先说书写的简单之前,反思一下我们自己是否已经足够的认真。 | | |
|
|
|
|
[第33楼]
[ 回复时间:2009-04-03 14:26 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-04-02 03:57 |
回复:[第31楼]
------------------
还有一个情况就是学习的人并没有认真看书上的每一句话。
我觉得是先说书写的简单之前,反思一下我们自己是否已经足够的认真。
------------------
回复:
没错儿,所有的迷宫游戏都需要足够的认真才能够找出出路。 | | |
|
|
|
|
[第34楼]
[ 回复时间:2009-04-03 15:05 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-04-02 03:57 |
另外要说一下,楼主2^21这个数据把我晕倒了,我花了十几分钟才明白错在哪里。
根据乘法原理,“1B=8b,8个二进制数能表示的数为:2^8 ”,后面应该是(2^8)^(2^13),也就是2的65536次方,而不是“8KB=2^13B=2^13*B=2^13*2^8=2^21 个数”。简单点就是8*2^10*8=2^16(bit)能表示2^(2^16)次方个数。 | | |
|
|
|
|
[第35楼]
[ 回复时间:2009-04-10 10:34 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:2
注册日期:2007-12-10 17:12 |
我的看法是:
10根地址总线能够寻到2^10个范围内的地址,即0 000 000 000 - 1 111 111 111这个范围段的地址.一共是
2^10=1024个地址.1个地址就是1个存储单元.1个存储单元里面又有8个2进制位,也就是8个bit.那么题目中所说的
寻址范围为8k,也就是8k=8^1024=8192个地址可以被cpu寻到.而一根地址总线只能寻到2个地址,那么多少根地址总
线能够寻到8192个地址呢?应该是2^13=8192,所以要用到13根地址总线才能完成题目的要求.
楼主的误区在于:没弄懂寻址能力是什么意思.我觉得寻址能力就是这个cpu能够寻到的地址范围.也就是个数.1根地
址总线可以寻到2个地址.即0和1. 2根可以寻到4个即00.01.10.11,那么要寻到8k个.我们知道1k也就是1024个存
储单元,也就是1024个地址,那么8k也就是8192个地址.那么需要多少根总线也就不难求出了,即2^(x)=8192.x=13
初学者个人意见.难免会有错误.请指正哈. | | |
|
|
|
|
[第36楼]
[ 回复时间:2009-04-10 23:33 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-04-10 23:13 |
呵呵,都是些爱钻牛角丫的人。。还是16楼说的最直接。。 | | |
|
|
|
|
[第37楼]
[ 回复时间:2009-04-12 09:13 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-04-12 08:29 |
呵呵!“微型计算机存储器的存储单元可以存放一个字节”这句话说的本身就有问题,应该是微型计算机存储器以一个字节为一个存储单元,这不就可以了吗!要寻址的话就只能把一个字节当一个整体了!!! | | |
|
|
|
|
[第38楼]
[ 回复时间:2009-04-12 09:16 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-04-12 08:29 |
回复:[第10楼]
------------------
十楼说的好呀,顶!!! | | |
|
|
|
|
[第39楼]
[ 回复时间:2009-04-12 09:58 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:3
注册日期:2009-03-13 16:19 |
本人也是个初学者,看了楼主的问题和各位大虾的回答后,我觉得9楼,11楼说的很对!
我本人的理解是:
1、存储单元的容量是1B(8个二进制位bit),一个存储单元能够存放8个二进制位;
2、CPU的寻址能力是以CPU能够寻找到的存储单元的个数来衡量的;所以,我们说CPU的寻址能力是8KB,指的是这个CPU能找到8K个B,也就8K个存储单元;
3、地址总线的宽度决定的是CPU能对多少个存储单元进行寻址;(书1.8节 第一段第二句话)那么,地址总线是怎样决定的呢:就是以地址总线上所能表达的信息的个数来决定的,地址总线上能表达多少个信息,那么就可以说CPU能够对多少个存储单元进行寻址;
现在来看书上这题:
题目叙述1个CPU的寻址能力为8KB——这句话的意思就是说:该CPU能够对8K个存储单元进行寻址,也就是说该CPU能找到8K个存储单元;
题问地址总线宽度——这也就是在问:CPU地址总线要多少根时才能表达8K个信息(8K=2^3*2^10),所以答案也就显而易见了。
楼主关键没分清楚存储单元,寻址能力,2进制位,把一些东西弄混淆了! | | |
|
|
|
|
[第40楼]
[ 回复时间:2009-04-13 15:07 ]
[引用]
[回复]
[ top ] | |
荣誉值:30
信誉值:0
注册日期:2009-04-09 10:05 |
我开始也不明白 但是我据根他的量词来做的 他用的kb不是 ‘个’
1根 地址总线 寻址范围为2个存储单元 每个存储单元=1byte
所以 1根地址线 寻址能力 就是2byte或者2个byte
实际上 你把 byte想像成存储单元 就通了
8000kb=8000个字节 等于8000个存储单元
如果 他的题目是
1个CPU的寻址能力为8000个存储单元,那么它的地址总线的宽度为___
我想你就好理解了 | | |
|
|
|
|
[第41楼]
[ 回复时间:2009-04-14 11:09 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-04-14 10:18 |
一条题目学到了好多东西啊!做题目的时候我想都没想直接做了,没想到有这么多的学问,惭愧了,以后一定要向大家学习!我的进度慢了才到第三章,我要加油了啊 ! | | |
|
|
|
|
[第42楼]
[ 回复时间:2009-04-14 14:46 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-04-14 13:58 |
寻址时的最小单位是字节,即Byte,不是Bit, 茅塞顿开..... | | |
|
|
|
|
[第43楼]
[ 回复时间:2009-04-15 19:46 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:1
注册日期:2009-04-01 21:26 |
受教了...不过我从网上下过来的答案怎么是16,郁闷... | | |
|
|
|
|
[第44楼]
[ 回复时间:2009-04-18 09:19 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-08-19 17:43 |
其实这就是一个等价替换的过程 在汇编中就把1个存储单元等价于1B; | | |
|
|
|
|
[第45楼]
[ 回复时间:2009-04-18 09:46 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-08-19 17:43 |
回复:[第1楼]
------------------
谢谢你的回复。不过我觉着寻址能力这个名字似乎翻译的不太好吧……这个名字似乎应该理解为能够寻到的地址的个数……,而其真正的意思是 其能够寻找到的地址所能表达的数据容量。
------------------
回复:
寻址能力表示的就是能够寻到的地址的个数,而不是能够寻找到的地址所能表达的数据容量。 | | |
|
|
|
|
[第46楼]
[ 回复时间:2009-04-19 13:45 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-04-19 12:53 |
以下引用:
CPU寻址能力 地址总线宽度
首先一条地址线所发出的指令只能是0或者1,那么多少条就可以是2^n个信号, 然后这个信号就代表一个地址,,
其次 一个地址代表一个存储单元,,然而一个存储单元里面存储8个bit即1Byte 这个问题8KB的寻址能力是指CPU可以控制8KB的内存容量 那当然是2^地址总数*1B=8KB 这样8*1024=2^13所以地址总线宽度是13....
------------------
回复:
如果这样说,我个人理解是CPU的寻址能力单位是B,即一个字节。8个BIT等于一个字节,楼主的例题答案就13
如果把他CPU的寻址能力单位,理解为BIT,楼主的例题答案就16
呵呵,不知对不对哦,第一天学的。 | | |
|
|
|
|
[第47楼]
[ 回复时间:2009-04-19 13:54 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-04-19 12:53 |
楼主分析的不错,不过确忽视了一个知识点。
地址总线决定了cpu可以对多少个存储单元进行寻址。而微型计算机存储器的存储单元可以存放一个字节(1.6)。这也就对应了楼主的这句话“如果答案为13,则把B看成了寻址能力的单位”。
楼主继续加油啊~
------------------
回复:支持你的观点 | | |
|
|
|
|
[第48楼]
[ 回复时间:2009-04-22 20:12 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-10-30 18:17 |
寻址能力是指cpu所能寻找到的内存空间,单位是B,即字节,因为在内存中内存单元以字节为单位;而地址总线的宽度是指地址总线的条数,可以这么简单的理解 | | |
|
|
|
|
[第49楼]
[ 回复时间:2009-04-23 21:21 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-04-22 20:31 |
哦 原来是单位的问题啊 厉害 昨天想了好久没有想出来 明白了 谢了 | | |
|
|
|
|
[第50楼]
[ 回复时间:2009-04-24 16:19 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-03-31 09:27 |
|
|
|
|
|
[第51楼]
[ 回复时间:2009-04-25 21:50 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-04-25 19:36 |
我觉得35楼理解的很不错的 !!!一个地址对应着一个存储单元。 | | |
|
|
|
|
[第52楼]
[ 回复时间:2009-04-28 08:13 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:2
注册日期:2009-04-08 10:47 |
对于楼主这个问题,我也思考了好久.昨天晚上我终于看明白了.现在说说我的理解,希望对各位有所帮助.
在Page6中最后两句:一个CPU有N根地址线,则可以说这个CPU的地址总线的宽度为N.这样的CPU最多可以寻找2的N次方个内存单元(内存单元=存储器单元). 又:微型机存储器的存储单元可以存储一个Byte,即8个二进制位.
所以:1个CPU的寻址能力为8KB,那么它的地址总线的宽度为13.
解: 8*1024(B)=2^3*2^10(B)=2^13(B)
如有说得不好,还请大虾指点批评. | | |
|
|
|
|
[第53楼]
[ 回复时间:2009-04-28 23:39 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-04-08 13:19 |
我来回答,首先cpu的寻址能力本质上就是要看能够找到的地址有多少位,但这个并不是做为cpu寻址能力的标准,因为cpu能够找到多少位,最终要看cpu地址总线的个数,所以通常认为,它的标准就是cpu地址总线的宽度。。。 | | |
|
|
|
|
[第54楼]
[ 回复时间:2009-05-02 20:09 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-05-02 11:54 |
|
|
|
|
|
[第55楼]
[ 回复时间:2009-05-05 23:02 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-05-04 20:20 |
都他妈这么牛逼 只生一个脑残的我。。。。我在这里撞墙 让自己大脑清晰点 可还是有些东西绑着我的神经。。。。。我疯了都 | | |
|
|
|
|
[第56楼]
[ 回复时间:2009-05-17 12:16 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-05-17 10:57 |
反正就是13根,不要去死钻牛角尖,谁要真的有本事,就给大家做一个操作系统来 | | |
|
|
|
|
[第57楼]
[ 回复时间:2009-05-26 09:59 ]
[引用]
[回复]
[ top ] | |
荣誉值:11
信誉值:1
注册日期:2009-05-12 12:06 |
地址总线是指CPU通过“N”条通信线路寻找到“2的N次方”个存储单元,每一个存储单元等于一个byte,所以一个寻址8K的数据,它的地址总线完度就是8KB*1024B=2^13B,而2^16b是由8KB*1024B*8b得到,这个2^16指的是存储8KB数据单元中有65536个二进制数,并不是地址总线的宽度! | | |
|
|
|
|
[第58楼]
[ 回复时间:2009-05-27 18:03 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-05-27 17:24 |
很有感触,从困惑到明白,谢谢楼主和各位回帖的兄弟 。 | | |
|
|
|
|
[第59楼]
[ 回复时间:2009-06-12 11:45 ]
[引用]
[回复]
[ top ] | |
荣誉值:4
信誉值:0
注册日期:2009-06-08 19:25 |
|
|
|
|
|
[第60楼]
[ 回复时间:2009-06-24 00:10 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:0
注册日期:2009-06-24 00:05 |
地址总线的一种组合状态对应一个存储单元,即寻址1Byte的能力
这个句就很说明问题了,感谢 | | |
|
|
|
|
[第61楼]
[ 回复时间:2009-07-04 23:03 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-06-27 23:55 |
8K
=8*1024
=8192-1(例:2的10次方个。最小数为0,最大数为1023)
=1111111111111(二进制)
=13根
按数据量算的话
8K
=8*1024*8
=65535-1
=1111111111111111(二进制)
=16根 | | |
|
|
|
|
[第62楼]
[ 回复时间:2009-07-06 21:53 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-06-22 20:35 |
在内在中,一个存储单元为一个字节(8个二进制位组成),CPU对内存单元的寻址是以字节为单位的,而不是以二进制位为单位的,所以CPU的地址总线根数决定了能找到多少个字节,比如有13根地址总线,则可以找到2^13个字节,即8*1024个字节(也即8KB),而数据总路线的宽度决定了能够一次传送多少个二进制位(也可换算成字节),比如有8根数据总线,则一次可以传输8个二进制位(也就是1个字节)的信息.两者是有区别的.所谓计算机的字长也就是说明CPU一次能够传输多少个二进制位(或多少个字节)的数据
------------------
回复:此为正解,至于位什么说一个存储单元就是一个字节(8bits),这是历史原因造成的,与计算机诞生之时的计算机架构、指令设计、数据表示、编码有关系,而当代的计算机为了与先前的软硬件系统兼容,一直沿用至今,所以,单个内存单元默认都是1个字节。 | | |
|
|
|
|
[第63楼]
[ 回复时间:2009-07-12 03:03 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-06-02 18:30 |
我也来吹吹水吧:
我觉得楼主是确实有点晕了.
首先,如你所说:地址总线的宽度决定了它的寻址能力.地址总线的宽度其实就是地址总线的根数,即有几根,是数量.
寻址能力就是说CPU能寻找得到多少个地址,是范围.
如果只有两根地址线,它们能表达的不同地址有多少个?__是00,01,10,11 共4个,表示为2的2次方,即可用2的N(N代表地址线的数量)次方表示.
同理可推,如果是有13根地址总线,则可以表示的不同地址个数为2的13次方个,即是8192个.OK,现在,这8192个地址其实就是8192个字节,因每个字节都有一个地址嘛.8192Byte转换一下其实就是8KB
现在楼主可明白,1个CPU的寻址能力为8KB,那么它的地址总线的宽度为___.这个题,要解的方程式只是:2的N次方=8KB(即8192个字节),把N求出来就OK啦
每种CPU可寻找(或说搜索)到的地址的个数是不同的,越先进的U越....这不是能力是什么,"寻址能力"这个词有什么错呢?
再说句题外话,王爽的书,写的是老古董8086的,大家在做题时不要总觉得什么可寻址能力太小而怀疑自己的判断,事实是老古董就是那样差劲的,不要拿现在的4核CPU去跟8086比.这样说,是因为我也曾困惑过.
------------------
回复:我也觉得这是正解。。。。 | | |
|
|
|
|
[第64楼]
[ 回复时间:2009-07-16 15:25 ]
[引用]
[回复]
[ top ] | |
荣誉值:12
信誉值:2
注册日期:2009-04-14 23:51 |
晕,我差点也差LZ给拐进去。
上面的人们基本都说过了,估计LZ也明白了。我还是再说下,
CPU的寻址空间寻的是内存单元而不是数据位,而一个内存单元可以存储1个字节,可以想成内存单元的的单位为字节。另一点,我想说,别忘了地址总线是做什么用的,它是确定地址位置的,而不是确定地址个数的,但是可以用它来表现CPU所能寻到地址的总数;在实际作用中,它应该是没单位的,但把它运用一下,用来确定可以寻到的空间大小时,却是可以带单位的。举个例子,如现实中的邮递员,他是通过门牌号送信的,但有事情时,可以问他所管的这片范围中有多少户人家一样。唉,和上面一位一样,语言表达能力不好,不知各位能明白我的意思不。 | | |
|
|
|
|
[第65楼]
[ 回复时间:2009-07-17 21:18 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-07-17 20:48 |
我来到这里的第一帖, 我来说说这个问题:
首先 在CPU里寻址是按字节的,不是按bit的 这个要明确。
楼主你的问题是:
1个CPU的寻址能力为8KB,那么它的地址总线的宽度为___. 答案是13
8KB=2^13B=2^13*8b=2^16b 也就是2^16个二进制位,也就是总线有2^16根组成,
想到此,我觉着答案为2^16
这里是这样的: 我用简易的方法表示一下,大家看看。如果要理解建议学习8086.
一根地址线分为: 0 和 1 两个状态 可以分辨两个字节, 0选中一个字节而1则选中第二个字节。
两个地址线分为: 00 01 10 11 四个状态那么就可以分辨四个字节,如下列所示:
00 01 10 11
字节1 字节2 字节3 字节4
然后类推三根地址线: 000 001 010 011 100 101 110 111
字节1 字节2 字节3 字节4 字节5 字节6 字节7 字节8
以上的表简单的表示: 1根地址线寻址2字节 2的1次方=2
2根地址线寻址4字节 2的2次方=4
3根地址线寻址8字节 2的3次方=8
类推:
2的13次方=1024*8
从而可知: 1个CPU的寻址能力为8KB,那么它的地址总线的宽度为___. 答案为:13
这里有一个问题:
CPU可能有16根地址线,但是这些地址线不一定都要用上。就是说如果有16根地址线,那么可以使用其中的一部分,比方说题目里的13根。剩下的不用管。当然有地址线剩下时会浪费资源。 | | |
|
|
|
|
[第66楼]
[ 回复时间:2009-07-17 21:22 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-07-17 20:48 |
回复:[贴 主]
------------------
我来到这里的第一帖, 我来说说这个问题:
首先 在CPU里寻址是按字节的,不是按bit的 这个要明确。
楼主你的问题是:
1个CPU的寻址能力为8KB,那么它的地址总线的宽度为___. 答案是13
8KB=2^13B=2^13*8b=2^16b 也就是2^16个二进制位,也就是总线有2^16根组成,
想到此,我觉着答案为2^16
这里是这样的: 我用简易的方法表示一下,大家看看。如果要理解建议学习8086.
一根地址线分为: 0 和 1 两个状态 可以分辨两个字节, 0选中一个字节而1则选中第二个字节。
0 1
字节1 字节2
两个地址线分为: 00 01 10 11 四个状态那么就可以分辨四个字节,如下列所示:
00 01 10 11
字节1 字节2 字节3 字节4
然后类推三根地址线: 000 001 010 011 100 101 110 111
字节1 字节2 字节3 字节4 字节5 字节6 字节7 字节8
以上的表简单的表示: 1根地址线寻址2字节 2的1次方=2
2根地址线寻址4字节 2的2次方=4
3根地址线寻址8字节 2的3次方=8
类推:
2的13次方=1024*8KB 所以13根地址线的寻址能力为8KB
从而可知: 1个CPU的寻址能力为8KB,那么它的地址总线的宽度为___. 答案为:13
这里有一个问题:
CPU可能有16根地址线,但是这些地址线不一定都要用上。就是说如果有16根地址线,那么可以使用其中的一部分,比方说题目里的13根。剩下的不用管。当然有地址线剩下时会浪费资源。 | | |
|
|
|
|
[第67楼]
[ 回复时间:2009-07-18 20:51 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-07-18 20:29 |
|
|
|
|
|
[第68楼]
[ 回复时间:2009-07-21 15:12 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-07-16 15:19 |
|
|
|
|
|
[第69楼]
[ 回复时间:2009-07-23 21:44 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-07-23 20:48 |
都是白痴吗?书白读了?这个寻址能力是指寻址的个数 在这要区分一下 不是同时寻址的个数 而是能寻的地址的总和个数 即是能区分多少个地址 10根总线就能区分1024个地址 从0到1023 分别是0000000000到1111111111 也就是1KB的寄存器 寄存器是什么我就不知道了 在内存还是在CPU 我只是看到这 之后 说寻址能力就很容易了 1GB的寄存器 就需要1000根导线 1000根导线就能为1GB的寄存器寻址 所以 寻址能力 就和寄存器形成了木桶关系 寄存器过小 太多的导线也就没用了 当然这是厂家的问题 | | |
|
|
|
|
[第70楼]
[ 回复时间:2009-07-23 21:49 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-07-23 20:48 |
补充一下 于是乎 寻址能力也可以说是所能寻址的寄存器的大小 即有10根导线的总线的寻址能力是1KB(这样的总线能为1KB的寄存器寻址) 有1000根导线的总线的寻址能力是1GB(这样的总线能为1GB的寄存器寻址) 至少 我是这样认为的 顾名思义的 于是乎 就不存在单位的问题了 | | |
|
|
|
|
[第71楼]
[ 回复时间:2009-07-23 21:57 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-07-23 20:48 |
当然 前面的说什么单位问题 13根导线能为8KB寄存器寻址 也就是64Kb寄存器 而算出16根就只能说寻址时他是为每个二进制单位寻址 寻址的结果只能是1和0 考虑到有三种总线 所以CPU能得出八种结果 只有八种计算时用的信息 这种计算机可以扔进垃圾桶了 | | |
|
|
|
|
[第72楼]
[ 回复时间:2009-07-23 21:57 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-07-23 20:48 |
|
|
|
|
|
[第73楼]
[ 回复时间:2009-07-23 22:02 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-07-23 20:48 |
|
|
|
|
|
[第74楼]
[ 回复时间:2009-07-23 22:09 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-07-23 20:48 |
纠正下之前的 我算错了 是每多一根导线 就多了2倍的寻址能力 于是乎1GB的寄存器只需要30根导线 而不是1000根 怎么算错的就别问了 好害羞 居然算错了 | | |
|
|
|
|
[第75楼]
[ 回复时间:2009-07-23 22:09 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-07-23 20:48 |
纠正下之前的 我算错了 是每多一根导线 就多了2倍的寻址能力 于是乎1GB的寄存器只需要30根导线 而不是1000根 怎么算错的就别问了 好害羞 居然算错了 | | |
|
|
|
|
[第76楼]
[ 回复时间:2009-07-23 22:12 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-07-23 20:48 |
还有是存储器不是寄存器 这也弄混了 看来机器语言果然不能用 | | |
|
|
|
|
[第77楼]
[ 回复时间:2009-07-27 20:12 ]
[引用]
[回复]
[ top ] | |
荣誉值:15
信誉值:0
注册日期:2009-07-08 20:35 |
^o^:我说楼主呀,分析的不错,我的心这两天正为这题在打仗呢,看咱俩的答岸是一样的我就放心了,我做的是对的,哈俣! | | |
|
|
|
|
[第78楼]
[ 回复时间:2009-07-30 22:38 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-03-16 19:29 |
|
|
|
|
|
[第79楼]
[ 回复时间:2009-08-16 20:24 ]
[引用]
[回复]
[ top ] | |
荣誉值:16
信誉值:0
注册日期:2008-11-03 20:39 |
在内在中,一个存储单元为一个字节(8个二进制位组成),CPU对内存单元的寻址是以字节为单位的,而不是以二进制位为单位的,所以CPU的地址总线根数决定了能找到多少个字节,比如有13根地址总线,则可以找到2^13个字节,即8*1024个字节(也即8KB),而数据总路线的宽度决定了能够一次传送多少个二进制位(也可换算成字节),比如有8根数据总线,则一次可以传输8个二进制位(也就是1个字节)的信息.两者是有区别的.所谓计算机的字长也就是说明CPU一次能够传输多少个二进制位(或多少个字节)的数据
------------------
回复:这个回复很好!1:CPU对内存单元的寻址是以字节为单位的,而不是以二进制位为单位的。2:数据总路线的宽度决定了能够一次传送多少个二进制位(也可换算成字节),比如有8根数据总线,则一次可以传输8个二进制位弄明白这两点就很容易理解了~ | | |
|
|
|
|
[第80楼]
[ 回复时间:2009-08-21 12:11 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-08-19 14:29 |
地址总线传输存储器的地址,是不管存储器内的数据的。
地址也是用二进制表示,一根线代表一个位。
题中:CPU的寻址能力是8KB,表达的意思是:传输存储器地址的最大值为:1FFF。
地址总线和数据总线传输的内容是不同的! | | |
|
|
|
|
[第81楼]
[ 回复时间:2009-08-22 17:18 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-06-06 20:17 |
我觉得把题目理解成:多宽的地址总线可以把一个8kb存储器都用了。也就是说8kb不是什么数,而是指的一个8kb大小的存储器,这样形象一些 | | |
|
|
|
|
[第82楼]
[ 回复时间:2009-08-22 20:34 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-08-20 08:23 |
顶39楼的
书上有这么一句话“一个cpu有N根地址线,则可以说这个cpu的地址总线的宽度为N。这样的cpu最多可以寻找2的N次方个内存单元”。而书上又说微型机存储器的存储单元可以存储一个字节,即8个二进制位。而存储单元的单位是B,所以就不用再向下算了。
1、存储单元的容量是1B(8个二进制位bit),一个存储单元能够存放8个二进制位;
2、CPU的寻址能力是以CPU能够寻找到的存储单元的个数来衡量的;所以,我们说CPU的寻址能力是8KB,指的是这个CPU能找到8K个B,也就8K个存储单元;
3、地址总线的宽度决定的是CPU能对多少个存储单元进行寻址;(书1.8节 第一段第二句话)那么,地址总线是怎样决定的呢:就是以地址总线上所能表达的信息的个数来决定的,地址总线上能表达多少个信息,那么就可以说CPU能够对多少个存储单元进行寻址; | | |
|
|
|
|
[第83楼]
[ 回复时间:2009-08-22 20:51 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-08-20 08:23 |
进位计数制 数制表示 基 数 数 码
十六进制数Hexadecimal H 16 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
十进制数Decimal D 10 0,1,2,3,4,5,6,7,8,9
八进制数Octal O 8 0,1,2,3,4,5,6,7
二进制数Binary B 2 0,1
我感觉8KB中的KB不一定代表的是单位 就像书中十六进制的数后都有一个H一样 是一种数制表示 | | |
|
|
|
|
[第84楼]
[ 回复时间:2009-08-25 13:29 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-09-19 22:17 |
总的来说,寻址能力表示的还是CPU能寻找到的存储单元所有的数据的总量,而不是存储单元个数,这个“能力”确实有歧义,还是记住好了。
今天刚开始学习,看了以上列位大牛的讲解,明白了这一点。 | | |
|
|
|
|
[第85楼]
[ 回复时间:2009-08-25 18:09 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-08-13 08:26 |
内存是由一个个单元组成的,一个单元=1B,每一个单元就有一个单元地址,寻址就是在根据地址总线在内存中找这个单元地址。。地址总线是由地址线组成的,它们协同工作,不搞独立,特殊化。地址线是一根导线,导线的信号有高有低,用0和1表示,当信号为0时能找到一个地址,同样,为1时又能找到一个地址。当地址总线只有一条时,只能找到两个地址,当有两条时,就能找到四个地址了,分别为(第一条)0和(第二条)1,00(两条都为0),11(两条者为1),(第一条)1和(第二条)。
题目:1个CPU的寻址能力为8KB,就是指,在8KB的内存中找8*1024个单元的单元地址。这样就求得了有13根地址线了。 | | |
|
|
|
|
[第86楼]
[ 回复时间:2009-11-23 12:26 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-11-23 10:14 |
回复:[第1楼]
------------------
谢谢你的回复。不过我觉着寻址能力这个名字似乎翻译的不太好吧……这个名字似乎应该理解为能够寻到的地址的个数……,而其真正的意思是 其能够寻找到的地址所能表达的数据容量。
------------------
回复:
你理解的是CPU寻址能力应该是能够寻找到的内存地址单元个数,这没错,比如CPU地址总线宽为16位,则最大能寻到2^16个内存单元,即65536个内存单元,单体现在内存上就是:能访问到65536个内存单元,有多大呢?64K这么大,即:65536*1B=65536字节=64K,所以寻址能力位64K | | |
|
|
|
|
[第87楼]
[ 回复时间:2009-11-26 17:34 ]
[引用]
[回复]
[ top ] | |
荣誉值:4
信誉值:0
注册日期:2009-11-26 15:08 |
一般都叫寻址空间,差不多就是这个意思。寻址能力表示的是CPU能够查找的地址空间的大小。 | | |
|
|
|
|
[第88楼]
[ 回复时间:2009-12-03 22:12 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-06-12 20:00 |
应该这样理解:寻址能力指的是寻找[内存空间]的能力,8K的内存空间对应8*1024个地址(1B对应一个地址)那么地址总线的宽度为13,即有2^13个内存空间的寻址能力! | | |
|
|
|
|
[第89楼]
[ 回复时间:2009-12-12 19:18 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-12-12 02:07 |
谢谢67楼,给你这么一解释,我总算弄明白了,我一直以为寻址能力8KB对应的是8KB的内存空间。我有个小小的疑问,为什么1B=8b,而不是2的8次方了??? | | |
|
|
|
|
[第90楼]
[ 回复时间:2009-12-24 12:00 ]
[引用]
[回复]
[ top ] | |
荣誉值:4
信誉值:0
注册日期:2009-06-08 19:25 |
地址总线
存储空间
地址总线单位是宽度,内容只能是0.1
存储空间单位是字节,,
现在就是用地址总线去确定存储空间的位置
比如说一个地址总线宽度为13
那么它的能确定的地址就是,从2^13个,
而它确定的每个地址都 对应存储器的一个空间
存储器空间单位是B,所以确定的数目是2^13B,
新的感悟,分享一下`如有错误,敬请指正 | | |
|
|
|
|
[第91楼]
[ 回复时间:2009-12-24 22:38 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-12-24 18:53 |
|
|
|
|
|
[第92楼]
[ 回复时间:2009-12-25 00:12 ]
[引用]
[回复]
[ top ] | |
荣誉值:61
信誉值:0
注册日期:2009-12-19 01:51 |
|
|
|
|
|
[第93楼]
[ 回复时间:2010-01-03 11:01 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-01-03 10:55 |
|
|
|
|
|
[第94楼]
[ 回复时间:2010-01-05 11:14 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-12-24 09:54 |
回复:[贴 主]
------------------
终于明白了:
地址总线和数据总线是不一样的,
地址总线是把八个比特位当作一个整体,找这八个用一个信号就可以。
数据总线是传数的时候是按比特位算的。
所以才有了楼主的混淆。
不知道我说的对不。 | | |
|
|
|
|
[第95楼]
[ 回复时间:2010-01-31 22:53 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-01-31 11:24 |
|
|
|
|
|
[第96楼]
[ 回复时间:2010-02-01 00:44 ]
[引用]
[回复]
[ top ] | |
荣誉值:61
信誉值:0
注册日期:2009-12-19 01:51 |
回复:[第31楼]
------------------
还有一个情况就是学习的人并没有认真看书上的每一句话。
我觉得是先说书写的简单之前,反思一下我们自己是否已经足够的认真。
------------------
回复:
确实如此。。。真有体会!!! | | |
|
|
|
|
[第97楼]
[ 回复时间:2010-02-25 20:26 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-02-22 20:08 |
|
|
|
|
|
[第98楼]
[ 回复时间:2010-02-28 02:13 ]
[引用]
[回复]
[ top ] | |
荣誉值:6
信誉值:0
注册日期:2009-09-08 11:48 |
关于单位:
前面已经讲过,一个内存单元为一字节。所以如果说寻到1kb(1024字节),即寻找1024个内存单元! | | |
|
|
|
|
[第99楼]
[ 回复时间:2010-03-14 20:34 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-12-20 09:09 |
刚学汇编,一开始也有同样的困惑,把“CPU寻址空间为8KB”理解成可以定为到8KB=8*1024*8个内存存储单元,不过最后还是理解了作者的意思,CPU寻址空间为8KB,其实指的是CPU可以定位到2K个内存存储单元也即2*1024=2^13个内存存储单元(1个内存存储单元存储1B),因此地址总线宽度为13。个人理解“CPU寻址空间为8KB”可能是一种大家已经习惯的说法,不能理解成CPU定位到8KB个内存存储单元。 | | |
|
|
|
|
[第100楼]
[ 回复时间:2010-03-23 09:25 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-03-16 21:08 |
CPU的寻址能力就是CPU能够寻址的内存空间位数,你也可以理解成个数,但8位等于一个字节:8b=1B,2的n次方=多少KB这本身也没什么问题啊.
检测题一
1个CPU的寻址能力为8KB,那么它的地址总线的宽度为___.
是在问有多少根地址总线就可以访问到8KB位的内存空间,答案是13根,而你所说的2^16位是8KB的内存空间总共有多少位,也就是13根地址线所访问的空间。
举个例子,一只手能拿两个苹果,那四个苹果要几个手拿,你不可能说四个手吧,那是总的苹果数,不是手的数目。
那同样的8KB=8192位的空间地址需要多少根地址线就能访问,答案是13(因为13根线可以表示8192种状态)
看我上一个的回答.
这就好比开关,打个比喻,我也刚学。
一根线就是一个开关,就像电灯泡,一根线只能有两种状态,开或者是关,那两根线就有4种状态,1开 2关,或者2开1关,或者全开亦或者全关.转换成数字信号就是00 01 10 11,也就是2的2次方,三根线就有8种状态了,000 001
011 111 101 100 010 110 你就可以把这些1和0想像成导线,是1就是开,是0就是关。那三根线就有8种状态,就是2的3次方.那么8KB是多少根线呢,先把8KB转成位,是8*1024=8192b,一位就是一种状态,8192种状态要多少根线就能表示出来呢,那就是2的多少次方等于8192,正好是13,就是说只要13根线我们就能表示出8192种状态来了.
我也是初学,不知道我说的对不对,如果说得不对请你原谅。 | | |
|
|
|
|
[第101楼]
[ 回复时间:2010-03-23 12:22 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-12-22 18:45 |
一个存储单元存储一个字节,就是8个二进制,是8个bit,故是13. | | |
|
|
|
|
[第102楼]
[ 回复时间:2010-04-01 20:24 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-03-27 14:42 |
首先注意下单位的换算1KB=1024B 寻址能力 就是寻找地址的能力 就是能找到多少地址的意思 | | |
|
|
|
|
[第103楼]
[ 回复时间:2010-04-01 20:25 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-03-27 14:42 |
首先注意下单位的换算1KB=1024BYTE 寻址能力 就是寻找地址的能力 就是能找到多少地址的意思 | | |
|
|
|
|
[第104楼]
[ 回复时间:2010-04-04 14:21 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-03-30 18:06 |
其实本来有点晕 现在更晕了 不过我想我会明白的 现在还是差点东西 | | |
|
|
|
|
[第105楼]
[ 回复时间:2010-04-10 15:35 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-04-10 09:21 |
因为一根总线可表示两地址,排列可知N根总线可表示2^N地址,而一个地址对应一个存储单元,里面有1B,寻址能力也就是能找到多少地址,反推即可 | | |
|
|
|
|
[第106楼]
[ 回复时间:2010-04-12 17:12 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-04-12 17:05 |
地址总线的宽度决定了CPU的寻址能力(1.1~1.10小节)
一个CPU有N地址线,则可以说这个CPU的地址总线的宽度为N。这样的CPU最多可以寻找2的N次方个内存单元.(1.8 地址总线)
一个存储器有128个存储单元,它可以存储128个Byte。微机存储器的容量是以字节为最小单位来计算的。(1.6 存储单元)
不知道楼主对于我回复的可有意见? | | |
|
|
|
|
[第107楼]
[ 回复时间:2010-05-11 15:39 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-05-11 13:53 |
虽然楼已经到一百多层了,但我还是支持12楼的意见! | | |
|
|
|
|
[第108楼]
[ 回复时间:2010-05-18 11:05 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-05-18 11:00 |
|
|
|
|
|
[第109楼]
[ 回复时间:2010-05-20 01:12 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:4
注册日期:2010-01-20 03:56 |
我也刚开始学汇编。
因为LZ的这个问题也困惑了好久。
在网上找了很多答案
还是感觉这个答案是最好的,就是在这里找到的,呵呵
不是自己说的。借用别人
地址总线宽度即地址总线的条数,本题要求CPU有多少根地址总线。
1位10进制有10个数字表示方式:0、1、2 ... 9,共10个数,即10^1。2位10进制可以有10^2种表示方式:0、1、2 ... 99。N位10进制有10^N种表示方式。
N位二进制可以有2^N种表示方式。
一根地址总线对应一位二进制数字。每根总线和二进制数字一样有两种状态,0和1。
N根地址线可以有2^N种表示方式。
地址总线的一种组合状态对应一个存储单元,即寻址1Byte的能力。
在2^N中,N是地址总线的条数。所以当2为底数时,指数是几即地址总线条数是几。
8KB=(2^3 * 2^10)B=2^13 B
指数为13,所以地址总线宽度为13
------------------
回复:“寻址1Byte的能力”,这句话让我恍然大悟。 | | |
|
|
|
|
[第110楼]
[ 回复时间:2010-10-19 19:21 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-10-08 20:16 |
呵呵,我是新手!谈谈想法。。不知是否正确。
我觉得关键问题出在1bit 上,1bit 为2种状态(不是"0"就是"1"),8bit=1b
比如01 00 10 11 10 01 11 01 这才叫“址”这个构成了一个BYTE
寻址,不是计算,寻址只是要我们找到这个地址,而"01 00 10 11 10 01 11 01"是数据,是需要机器计算出来的的。
所以我认为寻址能力的单位应该是byte 而不是 bit
确实蛮疑惑,最好是王爽老师讲解一下。 | | |
|
|
|
|
[第111楼]
[ 回复时间:2012-07-21 22:31 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2012-07-21 21:21 |
CPU的寻址能力不就是CPU能够寻址的个数么?
它的地址总线的宽度决定了它的寻址能力。
总线宽度为N,则寻址能力位2^N
可是2^N=?KB 似乎不能表达吧……所以想到此,我觉着此题没有表达准确。
我知道8b = 1B (八个二进制位等于一个字节)
2^(3+10)b=1KB
在检测题一中:
1个CPU的寻址能力为8KB,那么它的地址总线的宽度为___. 答案是13
8KB=2^13B=2^13*8b=2^16b 也就是2^16个二进制位,也就是总线有2^16根组成,
想到此,我觉着答案为2^16
首先,我觉着这个题本身出的就有问题,因为寻址能力指的是能够寻址的个数,是一个整数,没有单位,或者单位是“个” 可是这个题中,如果答案为13,则把B看成了寻址能力的单位,也就是说寻址能力是**个字节。如果答案为2^16,则把b看成了寻址能力的单位,这样也不对,而要把“个”看成寻址能力的单位,只能是:
8KB能表达的数的个数为:
1B=8b 8个二进制数能表示的数为:2^8
8KB=2^13B=2^13*B=2^13*2^8=2^21 个数,也就是说由21个二进制位(也就是说需要总线由21根组成)才能表达8KB描述的数。所以总线宽度为21.
请高手指点一下……我糊涂了。
------------------
回复:
首先你要明白几个概念:
一个存储单元等于1Byte(1字节)即8bit(8个二进制位)。
存储器是以字节为单位的。
寻址能力是指CPU最多可以寻址多少个内存单元(一个内存单元等于1Byte)
电子计算机中,一根导线可以传送的稳定状态只有两种,高电平或低电平,用二进制表示就是0或1
那么1根地址总线可以寻址2个内存单元
13根地址总线就可以寻址2^13个内存单元 (也就是说13跟地址总线的寻址能力是2^13Byte=8192Byte=8KB)
(误区:我觉着这个题本身出的就有问题,因为寻址能力指的是能够寻址的个数,是一个整数,没有单位,或者单位是“个”)
从上面的分析我们可以知道N跟地址总线可以寻址2^N个存储单元
1个存储单元=1Byte (存储单元是以字节为单位的)
所以,我们也可以说N跟地址总线的寻址能力为2^N个Byte. | | |
|
|
|
|
[第112楼]
[ 回复时间:2012-08-02 20:00 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2012-08-02 18:27 |
|
|
|
|
|
[第113楼]
[ 回复时间:2012-08-22 11:44 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2012-08-21 09:46 |
回复:[第9楼]
------------------
没错,说到能力,也是用具体干得活来衡量的,说到一个人有工作能力,就可以用这个人完成了多少任务来证明这人的工作能力,把他量化,要不然,老说一个人有能力有能力,又没干什么活,能叫有能力吗? | | |
|
|
|
|
[第114楼]
[ 回复时间:2012-08-23 22:24 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2012-08-21 13:20 |
其实是很多人对概念的不理解,寻址是指找得到多少个,就像你找得到多少个门牌号(多少字节)一样,而不是门里面的房间能装多少东西(房间里面有8个二进制位□□□□□□□□),单位是字节,也就是Byte,那么现在有8X1024个字节,要多少根线就能找到这个最大数字8192呢?这就需要2^13(2的13次方)条地址线才可以,这就是为什么得出是13条地址线的原因
--------------------------------------------------------------
至于为什么有人算得到16,那是因为他把门里面的房间能装多少东西也算上了,所以,多乘以一个8,这就是为什么得出16的原因,人家现在是问多少根地址线就可以找到8192个门牌,而不是房间里面的东西
--------------------------------------------------------------
首次发贴,如有不对,请高人指点,万分感谢! | | |
|
|
|
|
[第115楼]
[ 回复时间:2012-08-23 22:24 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2012-08-21 13:20 |
其实是很多人对概念的不理解,寻址是指找得到多少个,就像你找得到多少个门牌号(多少字节)一样,而不是门里面的房间能装多少东西(房间里面有8个二进制位□□□□□□□□),单位是字节,也就是Byte,那么现在有8X1024个字节,要多少根线就能找到这个最大数字8192呢?这就需要2^13(2的13次方)条地址线才可以,这就是为什么得出是13条地址线的原因
--------------------------------------------------------------
至于为什么有人算得到16,那是因为他把门里面的房间能装多少东西也算上了,所以,多乘以一个8,这就是为什么得出16的原因,人家现在是问多少根地址线就可以找到8192个门牌,而不是房间里面的东西
--------------------------------------------------------------
首次发贴,如有不对,请高人指点,万分感谢! | | |
|
|
|
|
[第116楼]
[ 回复时间:2012-09-19 06:07 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2012-09-19 05:53 |
我想这么解释一下:
比如有8根地址线,寻址能力为2的8次方为2^8=256个内存单元,也就是说能找到256个地方,这个地方是什么呢,是内存的地址,这个大家都知道。
接下来,我们去掉内存地址这个概念,光谈地址线,也就是我们能通过这个8根地址线能找到256种组合,对吧,因为都能找到256个内存地址啊,你说是不。
这每个组合呢代表一个byte(8根线,8个0 or 1 嘛,当然是一个byte),好了,8根线都代表256个byte了,那么9根呢,512byte;10根呢,1024byte;11根,2048byte;12根,4096byte。
最后,13根呢,8192byte=8KB,这就是最终答案。 | | |
|
|
|
|
[第117楼]
[ 回复时间:2012-09-24 15:47 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2012-09-24 15:43 |
我感觉你说的可能是对的 我之前想错啦 开始我以为是16 | | |
|
|
|
|
[第118楼]
[ 回复时间:2013-06-25 23:00 ]
[引用]
[回复]
[ top ] | |
荣誉值:18
信誉值:0
注册日期:2013-06-25 18:18 |
|
|
|
|
|
[第119楼]
[ 回复时间:2013-07-02 14:12 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2013-07-01 23:47 |
8K=8192 那么就是2的N次方是8192 算N是多少就可以了 我是这么算的 | | |
|
|
|
|
[第120楼]
[ 回复时间:2013-07-02 22:33 ]
[引用]
[回复]
[ top ] | |
荣誉值:4
信誉值:0
注册日期:2013-02-02 01:48 |
|
|
|
|
|
[第121楼]
[ 回复时间:2013-07-12 15:49 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2013-07-11 20:17 |
|
|
|
|
|
[第122楼]
[ 回复时间:2016-03-30 22:37 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2016-03-13 23:02 |
|
|
|
|
|
[第123楼]
[ 回复时间:2017-02-20 00:49 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-03-19 14:30 |
楼主的的贴子中:8KB=2^13B=2^13*8b=2^16b,这里是错的,2的13次方乘以8?这里重复乘8了!1K为1024,即2^10,8即2^3,所以8KB=2^3*2^10即2^13!怎么还要再乘一个8呢? | | |
|
|
|
|
[第124楼]
[ 回复时间:2017-02-25 15:46 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2017-02-25 15:06 |
楼主的的贴子中:8KB=2^13B=2^13*8b=2^16b,这里是错的,2的13次方乘以8?这里重复乘8了!1K为1024,即2^10,8即2^3,所以8KB=2^3*2^10即2^13!怎么还要再乘一个8呢?
------------------
回复:层主显然没有理解楼主的真正问题,他问的是明明是位来计算,为何以字节为单位,这就是重在理解其中的寻址能力而非其自身的属性 | | |
|
|
|
|
[第125楼]
[ 回复时间:2017-04-11 16:29 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2017-03-09 22:45 |
如果答案是16的话,寻的是二进制位,而不是内存单元,这样的话,数据总线可以只要一根,计算机一个比特的从内存传到CPU,这样效率太低 | | |
|
|
|
|
[第126楼]
[ 回复时间:2020-02-20 14:21 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2020-02-20 13:35 |
CPU寻址是寻的内存单元,内存单元的单位自然是Byte,比如它总共能找到多少个Byte | | |
|
|
|
|
[第127楼]
[ 回复时间:2020-03-06 13:45 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2020-03-06 13:43 |
看王爽老师的书籍,才发信之前大学学习的那教科书,简直是野蛮人写的。
概念不清,还错误百出。 | | |
|
|
|
|
[第128楼]
[ 回复时间:2020-08-06 12:54 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2020-08-06 12:33 |
回复:[贴 主]
------------------
同意23楼的说法,很清晰。感谢。 | | |