. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->基础知识
主题 : :  由地址总线和字长引起的讨论  [待解决] 回复[ 6次 ]   点击[ 748次 ]  
zyc969
[帖 主] [ 发表时间:2012-04-30 21:36 ] 
荣誉值:0
信誉值:0
注册日期:2012-04-30 21:05
稍微有点超范围了,呵呵。
平日里听多了“32位系统”和“最大能认到的内存为4GB”。看完地址总线部分后,动笔算了一下2的32次方再乘1字节,果真等于4GB,于是我便认为我懂了。再往后看到8086有16根数据总线,20根地址总线的时候我懵了,因为我之前一直默认的是数据总线和地址总线的宽度是相等的,接着再回头想想,以前的想法还有一个大漏洞,64位CPU配32位系统只能认到4GB内存,而64位CPU配64位系统能认到超过4GB,此处很明显是系统的字长决定了最大寻址能力,而不在于CPU。

所以我的疑问是:
1、系统的字长是如何影响CPU的最大寻址能力的?为什么会影响?
2、如果CPU和系统的字长相等,那么是否能像8086那样,增加CPU的地址总线以提高其最大寻址能力?

再问一个概念性的问题:
1、平时所说的“32位”、“64位”系统是不是指的系统的字长是32位、64位?
2、CPU的字长是不是就是数据总线的宽度?



希望能有高手解答一下,先谢谢了!
第一次在本论坛发帖提问。话说《汇编语言》第二版真的很好。很佩服王爽老师,把晦涩难懂的汇编语言写得像小说一样通俗易懂,看起来一点都不费劲。希望本论坛越办越好。
shanguianti
[第5楼] [ 回复时间:2012-06-21 12:38 ] 
荣誉值:19
信誉值:0
注册日期:2007-10-31 16:24
CPU的寻址能力是由地址总线的宽度决定的,操作系统会对CPU寻址进行限定,如32位的操作系统,只允许CPU的寻址大小为4G。实际上要想充分发挥64位CPU的能力,那么操作系统必须是64的,软件也必须是按64位设计的,当然主板也是要按照64位设计才行。
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved