如何判断程序是32位还是64位的

如何判断程序是32位还是64位的,第1张

查看程序的 PE 详细信息在Windows格式 (Windows EXE, DLL, OCX, SYS etc) 都包含着程序的PE信息,幸运的是微软为32位程序和64位程序设计了一个区分特性。读取PE信息的CHARACTERESTICS 特性,其中 IMAGE_FILE_32BIT_MACHINE (0x100) ,就表示着是否是32位程序 更多信息请查看微软的专题介绍 上述知识比较底层,开发人员可以看懂 从我们可以直接使用PE查看工具就可以了例如:开发语言查看器。图示:勾上即是32程序,否则反之

记得采纳啊

软件是没有区别的。

32位和64位系统的区别:

1设计初衷不同。

64位 *** 作系统的设计初衷是:满足机械设计和分析、三维动画、视频编辑和创作,以及科学计算和高性能计算应用程序等领域中需要大量内存和浮点性能的客户需求。换句简明的话说就是:它们是高科技人员使用本行业特殊软件的运行平台。而32位 *** 作系统是为普通用户设计的。

2要求配置不同。

64位 *** 作系统只能安装在64位电脑上(CPU必须是64位的)。同时需要安装64位常用软件以发挥64位(x64)的最佳性能。 32位 *** 作系统则可以安装在32位(32位CPU)或64位(64位CPU)电脑上。当然,32位 *** 作系统安装在64位电脑上,其硬件恰似“大马拉小车”:64位效能就会大打折扣。

3运算速度不同。

64位CPU GPRs(General-Purpose Registers,通用寄存器)的数据宽度为64位,64位指令集可以运行64位数据指令,也就是说处理器一次可提取64位数据(只要两个指令,一次提取8个字节的数据),比32位(需要四个指令,一次提取4个字节的数据)提高了一倍,理论上性能会相应提升1倍。

4寻址能力不同。

64位处理器的优势还体现在系统对内存的控制上。由于地址使用的是特殊的整数,因此一个ALU(算术逻辑运算器)和寄存器可以处理更大的整数,也就是更大的地址。比如,Windows Vista x64 Edition支持多达128 GB的内存和多达16 TB的虚拟内存,而32位CPU和 *** 作系统最大只可支持4G内存。

5软件普及不同。

目前,64位常用软件比32位常用软件,要少得多的多。道理很简单:使用64位 *** 作系统的用户相对较少。因此,软件开发商必须考虑 “投入产出比”,将有限资金投入到更多使用群体的软件之中。这也是为什么64位软件价格相对昂贵的重要原因(将成本摊入较少的发售之中)。

40分享举报

相关问题

两个方面:指令和寄存器 所有程序都是有微指令构成,32位程序使用的是32位的微指令,64位的程序使用的是64位的微指令。32位微指令和64位微指令的区别在于指令长度,32位的是32bit,64位的是64bit(1bit就是一个0或1位)。 微指令= *** 作符+ *** 作地址,32位微指令的地址长度为20位,实模式寻址大小为1M,在V86,也就是保护模式下寻址长度为4G,即20+20-8=32,2^32。所以32位程序在实模式下寻址能力是1M,保护模式下是4G。 同时,注意到保护模式下,寻址方式是段加偏移方式,也就是实际地址不是存储在一个寄存器或者同时存储在一个寄存器里面。说白了,就是实模式下寻址速度比保护模式下快。 64位的微指令中,地址线占48位,在实模式下寻址大小是256T(2^48)。保护模式下。。。几乎可以不需要了。 其次是 *** 作符部分,32位的微程序为12位,只能表示4096种 *** 作,如数值运算,移位 *** 作,数据传送等 *** 作,64位的微程序为16位,能表示的 *** 作更多。 最后是寄存器,不是CPU的L2,也不是内存或者硬盘之类的便宜货,这里说的是L1,64位CPU中新增加了几个寄存器,同时将32位CPU的寄存器从32位扩展到64位;但是32位的微指令不能访问新增加的寄存器,同时在原有寄存器的基础上也只能使用其中的32位,而不能使用完整的64位。 从上面可以看出,64位程序的优点在于可以使用更多的高速存储寄存器,可以使用更快的寻址方式,可以使用更多的 *** 作符(32位程序当中一些经常被使用的,比较复杂的 *** 作,可以使用一个 *** 作来代替)。从而使64位的程序可以运行的更快。 但是目前对于64位程序的认识仅在于可以使用更多的存储空间。

一、32位和64位是什么意思

1、32位和64位表示CPU一次能处理的最大位数;

2、32位CPU只能安装32位系统,64位CPU可以安装32位和64位系统;

3、如今市面上的CPU大多数为64位,怎么看CPU是32位还是64位。

二、寻址能力

1、32位系统的最大寻址空间是2的32次方=4294967296(bit)= 4(GB)左右;

2、64位系统的最大寻址空间为2的64次方=4294967296(bit)的32次方,数值大于1亿GB;

3、也就是说32位系统的处理器最大只支持到4G内存,而64位系统最大支持的内存高达亿位数,实际使用过程中大多数的电脑32位系统最多识别35GB内存,64位系统最多识别128GB内存。

三、软件兼容性

1、大部分软件都是基于32位架构环境下开发,64位系统的兼容性不如32位;

2、32位系统无法运行64位软件,64位系统可以安装多数32位软件,64位系统下32位软件安装文件夹带x86区分。

四、系统体积大小

1、64位 *** 作系统包含32位系统兼容库,既兼容64位又兼容32位的应用程序;

2、64位系统都比32位系统大的多,比如win7 64位比win7 32位系统大700M左右。

根据上述的介绍我们可以知道,如果CPU是32位,那么只能安装32位系统,如果CPU是64位,则可以安装32位或64位,除此以外还需看内存的大小,内存4G以下建议32位,因为32位系统最多识别35G内存,4G及以上内存建议64位系统。

codeblocks、codelite都行的

visual studio系列对c++支持还可以(60版本除外),但是对c语言支持不太好,要建立一个c语言工程很麻烦,而且不支持c99标准,最重要的是,他是收费的,而且只能在windows上运行。

我说的那两个都是开源的,免费的,对c++和c支持都很好,推荐使用

以上就是关于如何判断程序是32位还是64位的全部的内容,包括:如何判断程序是32位还是64位的、32位软件和64位软件有什么区别、电脑程序32位和64位有什么区别等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10208719.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存