当前位置:首页 > 野生技术 > 正文内容

为什么32位系统最大只支持4G内存

七星2个月前 (08-31)野生技术83

CPU概述

上一节讲了寄存器, 这节讲讲CPU.

CPU的发展史其他地方一大把, 这就不讲了,目前PC最常见的CPU是两家巨头, 英特尔(Intel)和AMD.

可以说是这两家垄断了CPU市场.

而从位数来说, 现在都用64位处理器了.那么就先讲讲32位和64位的区别.

80386(i386)是32位处理器典型的代表, 上一节也写了32位处理器如何寻址,寻址也就是处理数据的过程.

32位处理器一次所能寻址的最大位就是32位,用二进制表示范围就是:

0000 0000  ~  FFFF FFFF

这32位能表示的地址个数为2^32.

每个地址在内存中的大小又是八位(1字节), 2^32=4294967296(字节)=4G

那么64位CPU能使用多大内存呢?可以算一哈.

2^64=

so, 大约等于17亿G.

这是理论大小.

然后讲讲总线.

总线

总线的概念有该都听过, 控制总线,地址总线,数据总线.

那么就聊一聊为什么会存在总线这种东西.

总线其实很常用, 比如, USB总线....

先来瞅瞅冯诺依曼计算机结构:

如果输入或者输出设备想把数据存储到存储器或者从存储器取数据,

则需要用到逻辑运算器(CPU),那么CPU会停止工作,进而影响CPU的效率,

为了提高CPU工作效率,出现了总线的概念:

可以看到系统总线可以直接使输入输出设备操作内存, 而不影响CPU的运行.


系统总线: 用于IO接口、主存、CPU之间的信息传输,IO和CPU之间只传输指令信息。

主存总线: 专门用于主存和CPU之间的信息传输


系统总线又分为数据总线, 控制总线, 地址总线.

  数据总线用来传输各功能部件之间的数据信息,它是双向传输总线,其位数就是数据总线的宽度。它就是用来传输数据的

  地址总线主要用来指出数据总线上的源数据或目的数据在主存单元的地址或者I/O设备的地址。它是传输数据所在地址的

  由于数据总线、地址总线都是被挂在总线上的所有部件共享的,如何使各部件能在不同时刻占有总线使用权,

需依靠控制总线来完成,因此控制总线是用来发出各种控制信号的传输线。它就是用来传输控制指令的




其余的也没啥写的, 在上一节都写的很清楚了, CPU工作其实就是利用汇编指令操作寄存器和内存.

qixingbit.com

相关文章

CentOS7_docker图形化汉化管理工具部署

CentOS7_docker图形化汉化管理工具部署

1. 更改国内yum源, 并update2. 下载docker依赖    yum install -y yum-utils device-mapper-persistent-dat...

Ubuntu在运行gcc编译时报错的解决办法汇总

Q1:/usr/include/features.h:324:26: 致命错误: bits/predefs.h:没有那个文件或目.原因: 环境不完整, 通过下面指令来安装需要的环境.F:运行: sud...

从你输入网址到访问页面,浏览器-服务器做了什么

从你输入网址到访问页面,浏览器-服务器做了什么

 文章转载于igoro.com/archive/what-really-happens-when-you-navigate-to-a-url/ 作为一个学网络类的人,对于"从你输入...

mosh和cygwin的安装与使用

mosh和cygwin的安装与使用

前言:使用ssh连接我的Linux服务器时,老是会断开,所以决定用mosh.我本地的电脑是windows10所以需要安装cygwin来支持Linux上的mosh客户端.cygwin的安装下载如下安装包...

关闭win自动更新

关闭win自动更新

前言:我是一个码农,好不容易码完代码,准备睡觉,电脑关不掉了,那个心烦啊 于是,就有了下文操作Windows旗子 加上 R,输入:services.msc,  回车,打开...

CentOS_7更改yum为国内源

[qixing@localhost ~]$ su Password: [root@localhost qixing]# mv /etc/yum.repos.d/CentOS-Base.repo /...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。