百杂讲堂之为什么32位系统只能操作4g内存

百杂讲堂之为什么32位系统只能操作4g内存

计算机内存中很多的单元,每一个单元就是一个字节,一个字节有8位。每一个单元有两种状态:0和1。

所以

  • 两个单元就有4个组合;
  • 3个单元就有8个组合;
  • 依次类推……;
  • n个地址就有2的n次方组合。

32位计算机,就有32个的单元,就能控制2^32个单元,即2^32个字节,也就是2^32B,等于4GB,所以32位系统的计算机只能控制4gb的内存。

很多人也就想到了,现在有64位的系统,那么也就有2^64个单元,约等于17,179,869,184GB,oh my god!这么大的内存,然而,这只是一种理论上的值,现在由于各种技术的限制,不可能有这么大的内存。

原文地址:https://www.cnblogs.com/hahayixiao/p/9774516.html

时间: 2024-10-18 06:08:23

百杂讲堂之为什么32位系统只能操作4g内存的相关文章

详解为什么32位系统只能用4G内存.

本文转自:https://www.cnblogs.com/nvd11/archive/2013/04/02/2996784.html,感谢作者的干货 既然是详解, 就从最基础的讲起了. 1. Bit(位)              Bit计算机是计算机最小的存储单位,  大家都知道计算机实质上都是用二进制数0或者1来存储数据的,  所以Bit实际上可以看成存放1个二进制数字的1个位置.             也就是说bit只有2种值, 0 或者 1, 所以1个bit能存放1个布尔类型的值(bo

为什么32位系统最大支持4G内存??我自己悟出来了 终于 。。。。。

今天突然开窍了,想通了..... 以下是我的抽象想法: 32位系统 这个 多少位 指的是 硬件的 一次性发送过来的位数,一个字节 等于8位,内存的一个存储单元就是一个字节,即8位. 也可以这样来想这个位,就是栈中内存地址的二进制 位数,那么 32位 的意思是 栈中内存地址最大是 32个11,即: 你会发现,32位系统的 最大内存地址为:2的32次方 - 1,最小地址地址为:0-----因为计算机都是从0开始的.32个0 也是 一个内存地址. 那么32位系统的 最大寻址空间是:0 — (2的32次

sql2005性能优化(在32位系统上突破2G内存使用量的方法) .

转载自http://blog.csdn.net/soldierluo/article/details/6589743 服务器磁盘为(SAS)IBM组成RAID0+1,SQL2K5只识别4G内存,实际只占用2G内存.而使用 AWE的话,应用程序可以直接将操作系统允许的最大物理内存量保留为未分页的内存.使用 AWE 使 SQL Server 可以缓存详细信息,而不用从磁盘上的系统页面文件中读取详细信息.通过更快的数据访问提高了性能并减少了访问磁盘的频率.故决定打开SQL2K5的AWE参数,将6G的内

微软的操作系统中让 32 位支持大于 4GB 的内存。

先给一个参考文献:The RAM reported by the System Properties dialog box and the System Information tool is less than you expect in Windows Vista or in Windows XP Service Pack 2 or later version 先说结论: 1.PAE允许操作系统在32位模式下使用大于4G的物理内存. 2.不管是否使用PAE,对于单个进程而言,32位系统下可见

4GB的内存条在32位系统中只能显示为3GB左右的原因(转)

原帖地址:http://bbs.51cto.com/viewthread.php?tid=875012&extra=&page=1 1. 4GB的内存条在32位系统中只能显示为3GB左右的原因 第一个原因只会“吃掉”您一小部分的内存 众所周知,电脑中二进制中的换算关系是 1GB=1024MB,实际生产时,硬件厂商厂商的换算单位是1GB=1000MB,当电脑厂商告诉您,您电脑中的内存是1GB的时候,其实您的内存是1000MB,系统识别时,用1000处以1024,也就显示您的内存是0.976G

64位系统与32位系统区别

64 位的优点:64 位的应用程序可以直接访问 4EB 的内存和文件大小最大达到4 EB(2 的 63 次幂):可以访问大型数据库.本文介绍的是64位下C语言开发程序注意事项. 1. 32 位和 64 位C数据类型 32和64位C语言内置数据类型,如下表所示: 上表中第一行的大写字母和数字含义如下所示:I表示:int类型L表示:long类型P表示:pointer指针类型32表示:32位系统64表示64位系统如:LP64表示,在64位系统下的long类型和pointer类型长度为64位.64位Li

【Android】cocos2d-x-3.1.1环境搭建与创建工程( Win7 32位系统)

参考资料: http://blog.csdn.net/wxc237786026/article/details/32907079 1.环境搭建 2.创建工程 2.1 VS2012运行 2.2 Android实体机运行 1.环境搭建 安装工具: 1.1.JDK 1.2.Android SDK 1.3.Android NDK 1.4.apache-ant 1.5.Python 1.6   coco2d-x-3.1.1 1.1.JDK安装与配置 参考:http://jingyan.baidu.com/

PHP长整型在32位系统中强制转化溢出

CleverCode近期遇到一个PHP项目整形转化问题,mysql有一个字段id是bigint的,里面有长整型,如id = 5147486396.可是php代码因为历史原因却部署在多台机器中,当中A机器32位系统中,B机器64系统中.如今的问题是64系统中页面訪问正常.32位系统中訪问出错了.原因是php整形溢出. 1 A机器演示 1.1 获取A机器系统位数 # getconf LONG_BIT 1.2 整形转化代码 <? php $id = 5147486396; echo '$id:'.$i

Visual Studio2015 (VS2015)简体中文版 安装教程(在Win 8.1 32位系统中)

VS2015简体中文版安装 导航 介绍 解决安装先决条件 安装 VS2015 创建桌面快捷方式 启动 VS2015 命令启动VS2015 配置 VS2015 启动完成 MSDN安装 启动MSDN Visual Studio的功能添加和删除 Visual Studio的卸载 补一张安装完成的 介绍    返回顶部 由于安装在不同的操作系统中会遇到不同错误的提示 所以,不会在本篇文章中介绍 Visual Studio2015 在不同操作系统的安装方法. 如果在安装过程中遇到了问题 请在百度中搜索相关