把老 笔记本 扩充到了4G内存,但是因为系统是32位的,导致不能完美的使用4G内存。安装了很多软件,又不想重新安装64位的Win7系统。
那么该怎么办呢?下面我就为大家介绍一下具体的解决 方法 吧,欢迎大家参考和学习。
32位完美使用4G内存的方法: 1、下载ReadyFor 4GB解除补丁 win7 4G内存补丁(ReadyFor4G)下载,解除win7系统4G内存限制,ReadyFor4GB是国人编写的傻瓜化解除Win7内存4GB限制工具,让32位系统能用上4G或者更大的内存。应该说是识别,但是内存还是不能很好的用尽,4G以上内存,推荐还是用64位系统。 2、使用ReadyFor 4GB 解压后先运行ReadyFor4GB.exe 点击“应用”按钮,软件会进行解除和备份。 3、解除成功后,再运行 AddBootMenu.bat ,弹出命令行后,输入"y"然后回车。
注意,要以管理员身份来运行这个批处理文件,否则不能执行成功。 4、重启系统。 5、重启后,桌面会出现水印,下载“windows 7 去除水印工具”下的“Windows 7 Watermark Remover 32bit”,输入“y”然后回车重启即可去除水印了!。
为什么32位操作系统最大内存是4G?
因为32位操作系统的地址空间为32位,地址总数为2^32,每个地址对应1Byte内存空间,这样,32位操作系统管理的最大内存空间限制为2^32Byte=4*1024*1024*1024Byte,即4GB。 另外,补充一点,1Byte=8bit,即每个地址在内存上对应8位,这就是C++程序中最小的变量char 型变量大小为1Byte的由来。
4G内存,win7装32位好还是64位好?
装64位的系统好。32位操作系统默认不能完全支持4GB内存,最多识别3.25G,32位X86架构的地址总线是32位的,CPU、内存控制器、操作系统都是按32位地址总线设计。
32位地址总线可以支持的内存地址代码是4096MB。
这4GB个地址码正好可以分配给4GB内存。但是其它寄存器都需要系统分配给它们地址代码,所以总容量为4GB的内存就有一部分内存分配不到地址代码而不能使用。比如一些电脑的核芯显卡或集成显卡甚至独显会把一部分内存空间当作显存。扩展资料:32位系统与64位系统的区别:一、设计初衷不同。
64位操作系统的设计初衷是:满足机械设计和分析、三维动画、视频编辑和创作,以及科学计算和高性能计算应用程序等领域中需要大量内存和浮点性能的客户需求。换句简明的话说就是:它们是高科技人员使用本行业特殊软件的运行平台。而32位操作系统是为普通用户设计的。
二、要求配置不同。64位操作系统只能安装在64位电脑上(CPU必须是64位的)。同时需要安装64位常用软件以发挥64位(x64)的最佳性能。
32位操作系统则可以安装在32位(32位CPU)或64位(64位CPU)电脑上。当然,32位操作系统安装在64位电脑上,其硬件恰似“大牛拉小车”:64位效能就会大打折扣。三、运算速度不同。
64位CPUGPRs(General-PurposeRegisters,通用寄存器)的数据宽度为64位,64位指令集可以运行64位数据指令。也就是说处理器一次可提取64位数据(只要两个指令,一次提取8个字节的数据),比32位(需要四个指令,一次提取4个字节的数据)提高了一倍,理论上性能会相应提升1倍。四、寻址能力不同。64位处理器的优势还体现在系统对内存的控制上。
由于地址使用的是特殊的整数,因此一个ALU(算术逻辑运算器)和寄存器可以处理更大的整数,也就是更大的地址。比如,Windows Vistax64Edition支持多达128GB的内存和多达16TB的虚拟内存,而32位CPU和操作系统最大只可支持4G内存。五、软件普及不同。64位常用软件比32位常用软件,要少得多的多。
道理很简单:使用64位操作系统的用户相对较少。因此,软件开发商必须考虑“投入产出比”,将有限资金投入到更多使用群体的软件之中。这也是为什么64位软件价格相对昂贵的重要原因(将成本摊入较少的发售之中)。总而言之,Microsoft Windows64位操作系统,必须“上”靠64位主机硬件的支撑,“下”靠64位常用软件的协助,才能将64位的优势发挥到极致,“三位一体”缺一不可(道理很简单:操作系统只是承上启下的运行平台)。
至于64位电脑可以安装32位操作系统,64位操作系统可以安装32位软件,那是设计上的“向下兼容”,不是64位设计初衷的本来含义。
详解为什么32位系统只能用4G内存
Bit 是计算机最小的存储单位,大家都知道计算机实质上都是用二进制数 0 或 1 来存储数据的,所以 Bit 实际上可以看成存放 1个二进制数字的 1个位置。 我们平常讲的 1个文件占多少 KB、MB,1个硬盘占多少 GB、TB,后面的这个 B,指的就是字节 Byte,而不是上面的 Bit,而且 1个 Byte = 8 Bit,这个怎么理解呢? 其实 1个 Byte 可以看成是有 8 个物理上连续的 Bit 组成的,如下图: 上面说了,1个 Bit 只能表示两种值 0 or 1,其实就是 种值。
那么 1个 Byte 就是 种值了。
介绍上面两个存储单位后就介绍下内存了。 内存有一个很重要的特性,CPU 可以直接访问内存里的数据。 CPU 不能直接访问硬盘的数据,只能先把硬盘的数据放到内存里,然后再从内存中访问数据。 所以内存才是计算机系统的主存储器,而硬盘则与光盘、U盘同为外部存储器。
内存里存放的数据是什么呢? 其实也是只是存放 0 或者 1 这两个二进制数字,所以内存里实际上有海量的小格子,每 1个格子是 1个 bit ,就只能存放 1个数字(0或者1),那么数值 255 就需要 8 个格子存放,也就是 1个字节 byte 。 但是问题来了,我刚说内存里的格子数量非常巨大,如果 CPU 要读出某个指定的数据,怎么去找呢? 1个 1个格子去遍历吗?其实稍微接触过数据结构的都知道,遍历虽然实现简单,但是在海量数据面前简直是自杀行为。 所以实际上内存是把 8个 8个 bit 排成 1组,每 1组成为 1个单位,大小是 1 byte (字节),CPU 每次只能访问 1个 byte,而不能单独去访问具体的 1个小格子(bit)。
1个 byte 字节就是内存的最小的 IO 单位 。 也就是说内存是由 8个 8个小格(bit)组成的 1个字节单位(byte)排列组成的。 如下图: 其实大部分数据都会作为各种数据类型存放在内存内,而各种数据类型所占的字节大小也是不同的,例如上图解析的,char 字符类型占 1个字节,int 类型和 unsigned int 类型占 4 个字节 byte。
即使我们把内存分成了以字节为单位的结构,但是实际上内存里还是有非常多的字节的,例如 64 MB内存就有 64 × 1024 × 1024 个字节! 如果 CPU 要查找 1个变量,还是要一个个字节去找到话,还是很浪费时间的,所以为了避免去遍历内存,计算机系统就引入了内存地址这个概念。 举个例子,内存就是一栋大楼,而内存里每 1个字节就是大楼的每个房间,而内存地址就是房间的门牌号码。如果没有门牌号码,我们去访问某个住在大楼的人是十分困难的,只能从 1 楼开始每个房间去敲门,如果那个人住在顶楼你就悲剧了。
而如果你知道那个人的门牌号码,就可以直接上去敲他的门查他水表了,实在是方便很多。 内存也一样, 计算机操作系统 会给内存每 1 个字节分配 1 个内存地址,CPU 只需要知道某个数据类型的地址,就可以 直接 去到对应的内存位置去提取数据了。 当代计算机还实现了一个逆天的技术,就是直接寻址了。 什么意思呢?还是用上面的例子说明,假如你知道你要找的人住在那栋大楼的 17 楼 1702,但是你还是需要从 1 楼走到 17 楼去找他,这个过程还是需要时间成本的。
但是如果你具有了直接寻址技术,就能直接跳到 17 楼 1702 门前,如果你找的下 1个人在 2 楼,又能从 17 楼直接跳到 2 楼。 直接寻址技术已经成为当代计算机软硬件的标准技术之一了,也就是说只要 CPU 知道要访问数据的内存地址,就能直接到内存的对应位置去访问数据。 跟门牌号一样,其实内存地址也是由 1个 2 进制数字来表示的。每 1个地址对应内存里的 1个 byte 字节,如果地址的值加 1,那么这个地址就对应下 1个字节了。
那么内存地址的长度是多少呢?这个就是这篇文章标题所涉及的。在32位操作系统中, 内存的地址就是 32 位的 2 进制数 。 上面说了,既然 32 位系统里内存地址长度是 32 位的,所以 32 位的地址范围就是从 0000 0000 0000 0000 0000 0000 0000 0000 到 1111 1111 1111 1111 1111 1111 1111 1111 (0x00000000 ~ 0xFFFFFFFF), 总共有 个地址。 那么 到底是多少个? ,就是 4G ,而每 1个地址对应 1个字节,容量就是 1 byte,所以 个地址就总共能对应 4GB 的内存容量,这里的 B 指的是 byte 字节。
假如给 32 位的系统配上了 8GB 的内存,操作系统最多也只能给其中 4GB 分配地址,其余 4GB 是没有地址,因为地址不够用,所以 32 位系统最多支持 4GB 内存就是这样来的。 那么64位系统呢,对应的,64 位系统的内存地址是 64 位的二进制数,那总共有多少个地址? 个地址, 也就是说 64 位系统配上 64 位 CPU 理论上支持 16777216TB 的内存, 当然这个只是理论了,实际上现在的普通主版能上个 32GB 都不错了。 见下图: 大家都知道指针是用来存放内存地址的,那么对于 32 位系统来讲,内存地址是 1个 32 位长度的 2 进制数,而每 1个内存单位长度只有 1 byte = 8 bit(位),所以 1个指针就需要 4 byte 的内存来存放该指针的内容(1个内存地址)。
所以,我们定义 1个指针 int *p; 然后求 sizeof(p) 是返回4字节。 而对于 64 位系统来讲,内存地址是 64 位的 2 进制数,所以 sizof(p) 就返回了 8,共需要 8 个内存单位去存放 64 位系统的 1个指针。
32位计算机的最大内存为什么可以达到4G?
32位操作系统,配合32位CPU,寻址空间位2^32次方,计算出来是4294967296字节,就是4G,32位系统最大支持4G空间,如果想要32位系统支持4G以上空间的话,就要用PAE的特殊内核,采用特殊方式访问,但是系统效率会比原生的64位系统低。64位操作系统配合64位CPU,寻址空间是2^64次方,计算出来是18446744073709551616字节,换算一下4G个G,太大了,反正是N多G,一辈子也用不完。
当然这是64位系统的理论最大内存支持,实际上谁也用不了这么大内存,反正如果你的系统是64位的,CPU是64位的,那么随便插个8G,16G内存是肯定能支持的。
"32位计算机有32根数据线"。
标签: 4g内存用32位