dxy1058081378 发表于 2013-8-22 15:50:53

突然想到了关于地址总线的问题

假如要查找的地址超过了地址总线的宽度该咋办

小咒 发表于 2013-8-22 16:56:27

这个问题。。。
我这样来解答你,我反问一句,寻址宽度的定义是什么?

内存地址是如何表达的,CPU又是如何进行寻址的。

这些问题明白了你应该就不会这样来问了。。

leewon 发表于 2013-8-22 16:58:14

那就寻不到了啊,就像现在好多机器,32为的操作系统,超过4G,其余的内存就寻址不到了,内存浪费。

小咒 发表于 2013-8-22 17:02:54

leewon 发表于 2013-8-22 16:58 static/image/common/back.gif
那就寻不到了啊,就像现在好多机器,32为的操作系统,超过4G,其余的内存就寻址不到了,内存浪费。

寻址宽度是活的,不管多少内存都是可以寻址到的,仁兄不要乱回答啊。。。
只是32位系统只有4G内存,如果32位被微软定义为8G的话还是可以寻址到的
寻址是CPU,不是系统!

Crazy迷恋. 发表于 2013-8-22 17:26:07

楼主这么和你说吧~~~如果你的机器有8G内存,你装一个32位的系统。那它最多寻址4G 那么剩余的寻不到。就浪费了(因此迷恋很负责的把自己的机器装成了64位,用的很辛苦)。同样的如果查找的地址超过 了就找不到了。而且一般不会出现地址超出的。8086汇编语言采用段+偏移的方式构成一个20位的物理地址。如果段地址过大是有可能超出寻址范围的。FFFFH*16+FFFFH从基本看上去对了但是 操作系统在分配的时候应该不会分配这么大的段地址给 程序。在程序载入到内存的时候这个过程由操作系统分配内存。因此。在写程序的时候我们的段地址一般都不是写死的。

leewon 发表于 2013-8-22 17:30:36

我理解寻址宽度是受CPU寄存器限制的,如果CPU内部的寄存器只有32位,那么外部地址总线就算有64位,CPU内部ALU做运算的时候,也只能存放32位的数据啊。所以我理解不是内存有多大,CPU就都可以寻址到的。

为啥说操作系统这个例子是我觉得,现在机器硬件上已经设计成64位了,但是32位操作系统没有使用高32位,所以即使你有更多的内存,在软件设计上,操作系统依然限制了你使用的物理内存内容范围是4G。

楼主应该提问的是物理内存寻址范围吧。不对请指正。

565123 发表于 2013-8-22 20:25:08

你是说FFFF:FFFF这种情况吗??

这种情况算出来的实际地址是10FFEF,会把前面的1舍去,所以地址会是0FFEF

牡丹花下死做鬼 发表于 2013-8-22 22:07:32

(⊙o⊙)…32位的电脑你插入500G的内存显示能用的也只有4G而已
你认为会有你说的这种可能吗???

Crazy迷恋. 发表于 2013-8-22 22:09:36

565123 发表于 2013-8-22 20:25 static/image/common/back.gif
你是说FFFF:FFFF这种情况吗??

这种情况算出来的实际地址是10FFEF,会把前面的1舍去,所以地址会是0FFE ...

会这样啊~~~我没试过·~~~呵呵~~~{:7_174:} 倒是我 错了

dps521 发表于 2013-8-22 22:11:57

CPU只能搜寻2的N次方地址超了搜不出来

651871536 发表于 2013-8-22 23:48:18

地址线可以复用的啊,就比如说,10根地址线,地址总线的宽带是20吧,这10根线先传高10位再传低10位。我这是打个比方,具体多少位我也不知道了

小9 发表于 2013-8-23 13:26:16

超 过了地扯总线将会找不到。

怡静 发表于 2013-8-23 14:55:12

这个问题真没仔细想过,但是我想它查找的地址不可能超过地址总线的!如果真的超过,应该是找不到!

604274069 发表于 2013-8-23 18:08:27

本帖最后由 604274069 于 2013-8-23 18:13 编辑

地址总线的宽度N是最多寻址2的N次方内存单元。
:loveliness:

福禄娃娃 发表于 2013-8-23 22:05:34

CPU设计的时候就已经考虑到这点了,地址总线的宽度比CPU内部寄存器的数量多。8086CPU地址总线为20根,内部总线只有16根,所以才发明分段寻址方式。

紸锭↗噯伱□ 发表于 2013-8-28 08:19:17

这个应该是就找不到了吧。。。

shi_1236 发表于 2013-9-3 13:24:10

顶。。。。{:1_1:}顶。。。。{:1_1:}
页: [1]
查看完整版本: 突然想到了关于地址总线的问题