百科问答小站 logo
百科问答小站 font logo



为什么64位的软件都比32位的大一些?貌似大部分软件都要将64位和32位的版本分开下载,而游戏却可以统一下载,为什么呢? 第1页

  

user avatar   bei-ji-85 网友的相关建议: 
      

文件大小变化的原因:

1. 指针

所有编程语言里,到处都在使用指针或者类似的东西(比如对象、引用等等)。

在32位环境里,指针是32位的,在64位环境里,指针是64位的,绝大多数程序里,指针的使用范围很广。

2. 汇编指令

64位指令比32位指令要长一些,比如立即数的长度会由32变成64(00112233变成0000000000112233),并且有时候需要有特定前缀修饰(REX Prefix)

为什么软件都分32和64位?

其实可以不分的,分的原因有两种:

一种原因是开发者懒,有很多方法能把32和64位软件打包到一起,比如你说的游戏。当然游戏也有分开发布的,打成一个安装包,运行的时候有32和64两个版本可选。

另一种原因是打包到一起会太大,尤其是软件本身是一种平台的话(比如office、VS等支持开发功能的软件),内部的库就分32和64两套,全打包起来的话尺寸基本上要翻倍,而这里的东西可能用户能用上的只有一半。

基本上因为以上两条,有些软件就分32和64单独发布了。




  

相关话题

  软件http请求 对网站本身有没有弊端? 能否通过这种模拟请求的方式做出一些自动刷回复的脚本软件,并出售? 
  如何反驳「不应该强制用户更新」这一言论? 
  如何看待 9 月 27 日某手机整蛊文件迅速传遍全国各大高校,从原理上来看这是一个怎样的恶搞软件? 
  国有浏览器为何多选用谷歌 Chromium 内核产品?自主研发的困难在哪里? 
  如何看待美国国务卿蓬佩奥称美国要禁止 TikTok 等中国应用程序?如果消息属实可能会带来哪些影响? 
  Win10 将永久删除 FlashPlayer ,必须要 flash 时怎么办?可以用什么来替代它? 
  为什么我们努力提高网络带宽而不是去想办法压缩文件尤其是视频文件的大小呢? 
  软件里最令人印象深刻的彩蛋或游戏隐藏关有哪些? 
  怎么把腾讯视频下载的视频转换成MP4格式? 
  为什么问下载高清电影,可以得到热情的解答,但是问如何破解软件或者激活盗版Windows却招来一片骂声? 

前一个讨论
有哪些用代码写的冷笑话?
下一个讨论
大学里助学金的争夺是不是很恶心?





© 2025-05-15 - tinynew.org. All Rights Reserved.
© 2025-05-15 - tinynew.org. 保留所有权利