Re: [闲聊] [玛奇] 游戏程式升级成64位元有什么好处?

楼主: jpopaholic (日音スキ)   2023-02-09 19:35:13
※ 引述《kopune (谈崩专家 康普尼)》之铭言:
: 玛奇韩国原厂已经升级64位元一段时间了
: 台版则是下礼拜(2/16)要升级
: MMORG升级64位元有什么实质好处阿?
: 可以减少位移吗?
: 现在游戏大多是直接64位元了吧?
首先讲益处之前要先认识一下
所谓的32/64/....位元程式 那个位元代表的是啥意思
大家都知道位元,是指一种电脑容量单位,英文为bit(s)
那这里的容量,又是指啥呢?
内存/硬盘/程式? 都不是
而是指电脑(CPU)处理一道程序的单位大小
大家都知道不论何种程式语言,用compile编译(加link)后
运送到电脑/OS/内存/CPU/暂存器 后都会变成数位的0和1(支语:数字)
最后用一堆NAND之类的逻辑闸(底层变成一堆npn pnp半导体)运送电子
而32/64/...位元 则就是运行一道指令单位需要多少个0/1
这时就会有资工系教授/面试官会考以下问题:
请问以下程式指令最后输出会是啥?
int *a;
int b;
printf("%d\n",sizeof(a));
printf("%d\n",sizeof(*a));
printf("%d\n",sizeof(b));
printf("%d\n",sizeof(&b));
之类的....
所以越多位元,代表一道指令有更多的0/1 , 则会有更多的变化
不考虑op code/暂存器/内存位址
32位元 一道指令就有2^32种变化
而64位元 则是有2^64种变化
所以32与64位元不单单只是差两倍
知道原理后就小讲一下变成64位元的益处
大家(电虾老板)都知道,32位元处理器的电脑 内存最高只能塞4G
但很少人知道为何
电脑不只资料用0/1储存,程式也一样
一般程式大部分都会躺在硬/软/光盘 (现行有的会躺在云端?)
要运作时才会把程式有上述储存装置转移到内存
然后利用CPU(与内部的暂存器)去读/写里面的内存,运作里面的程式
假设不考虑op code,单纯只是要寻址内存每个区块
32位元电脑 寻址长度最高也就只有32位元长度
所以最多可寻址2^32(0~2^32-1)
又每个cell假设为1byte(刚好是电脑处理资料最小单位)
那这样电脑最多只能寻址2^32 * 1byte(s) = 4GB
所以4GB就是这样来的
多余的内存除非用特殊的指令,不然一般无法使用到
所以升到64bit首先最有感的就是内存可以变大
那内存变大有何好处: 最明显感受到就是运作变快(先不考论程式品质等等其他因素)
上述说过,程式一般都会躺在硬盘,需要用时才会转移到内存
所以假设要运行16GB的程式
32bit就得要搬移4次程式,而64bit只需搬移一次(假设内存设置>=16GB)
硬盘运作速度明显远慢于内存/暂存器运作速度
所以搬移硬盘越多次,速度就会拖越慢
由于64bit比32bit搬移次数少,所以运行得比较快
再来是指令本身
32bit指令只有2^32种变化,而64bit则更多
所以64bit可以把很多行32bit指令融合成一个变新的指令
像是某个步骤32bit需要跑3次,而64bit可能只要跑一次
在频率相同状况下,64bit这样就会比32bit快3倍
所以改64bit运行速度会加快
但是由于指令不同,所以不论是OS和程式需要大幅度的改正
所以就会有一堆相容性问题
以上是小小的科普
作者: thesonofevil (四非亚心)   2023-02-09 19:39:00
先推 免得人家说我看不懂
作者: labbat (labbat)   2023-02-09 19:40:00
早期16bit/32bit争议跟交流电直流电之争差不多啦之后就多了32bit/64bit总是在重复一样的情境
作者: lucky0417 (L.W)   2023-02-09 19:42:00
有以下吗
作者: SangoGO (隐世的外来人Lv.1)   2023-02-09 19:44:00
我知道,所以x86比x64好对吧(爆论
作者: k960608 (雾羽‧浪沙)   2023-02-09 19:48:00
先推
作者: kaioken (寂寞猎人)   2023-02-09 19:49:00
是...这样游戏程式更可以运用新的硬件资源吗?
作者: forsakesheep (家裡蹲魯廢肥宅)   2023-02-09 19:52:00
好像看懂了,又好像没懂
作者: yankeefat (本人内建试制51cm连装砲)   2023-02-09 19:57:00
最重要的一点 游戏中货币的持有量会多很多RO的台币交易 一部分就是因为高价品根本没办法用R币
作者: lay10521 (小伊达)   2023-02-09 20:03:00
32bit可以用大数 避免32bit的限制
作者: hh123yaya (KID)   2023-02-09 20:07:00
恩恩 跟我想的一样
作者: fate201 (Licht)   2023-02-09 20:12:00
Bit数越多 寻址的成本也越高 不知道什么时候会出现128bit
作者: rockmanx52 (ゴミ丼 わがんりんにゃれ)   2023-02-09 20:37:00
128bjt出现过了 没有在一般电脑上使用而已bit
作者: ken841520 (WEIWEI)   2023-02-09 20:52:00
大数处理有开销啊,怎么可能比得上原生64bit
作者: NotBi11 (比尔爆破)   2023-02-09 21:10:00
你应该在研究所考试前发的 帮大家复习OS
作者: sdd5426 (★黑白小羊☆)   2023-02-09 21:23:00
这篇的内容哪需要到OS 计组就有了
作者: harry2014 (钦风)   2023-02-09 21:25:00
我逐渐理解一切
作者: minie0114 (Quelpo)   2023-02-09 21:28:00
大家都知道…? 恩…
作者: A5Watamate (出荷済)   2023-02-09 21:31:00
怎么没有胡歌老公
作者: holyark93 (nothing)   2023-02-09 21:45:00
推荐这篇文章
作者: efkfkp (Heroprove)   2023-02-09 21:51:00
死去的计算机概论突然攻击我
作者: gs8613789 (Shang6029)   2023-02-09 22:05:00
张凡有教过
作者: Lhmstu (lhmstu)   2023-02-09 22:26:00
x86是跟cpu指令集有关啦XD
作者: aertina (Aertina)   2023-02-09 22:36:00
涨知识捏

Links booklink

Contact Us: admin [ a t ] ucptt.com