首页 > 游戏竞技 > 当我写了个BUG却变成核心玩法 > 第470章 还有高手?

第470章 还有高手?(1/4)

目录
好书推荐: 装腔作势 似暮色沉溺 什么?你说陛下是战犯!! 重回82:我女儿一个都不能少 紫梦游龙新书我以狐仙镇百鬼 文明之万象王座 武神品酒师 三国:谁让他做谋士的? 超神级学霸 沙雕系统疯狂内卷,灵宝满出来了

/>

顾凡继续解释道:“那么计算机具体是怎么储存小数的呢?

“这就是我之前所说的‘浮点数’,浮点的意思是,小数点是可以浮动的。

“就比如 />

“在程序中,为了让二进制用到科学计数法,并且规范化,就要保证小数点左侧只有1位,并且必须为1,我们目前绝大多数计算机所使用的浮点数,都是IEEE制定的国际标准,采用符号位+指数位+尾数的格式。

“总之,由于存在十进制到二进制之间的转化,所以按照这种方式来计算, />

“十进制转二进制计算,然后再转十进制输出,这就导致了前后两个数不相等的情况。”

莉莉丝眉头紧皱:“那为什么不能用十进制精确计算呢!”

顾凡轻咳两声:“这个……如果要从头解释『计算机为什么要使用二进制』的话,就太复杂了,一时半会说不清。

“但针对这个问题,我可以从另一个角度来说明为什么大家会容忍这种误差,因为这种误差本身就是不可消除的。

“即便是十进制,也会出现许多无法除尽的情况。十进制只是能够精确表达2和5能够除尽的数字,但对于1/3、1/7这样的数字,十进制也就无能为力了,同样也会产生误差。

“所以不管采用什么样的进制,误差都是必然存在的。”

莉莉丝感到大脑冒烟:“好吧,我知道了,在计算机里面 />

顾凡长出了一口气:“莉总你能理解这一点的话,这个bug解释起来就稍微容易一些了。

“简单来说就是,程序员在写动态难度的代码时,没有考虑到这种999后面还带小数的极端特殊情况,没有为这种特例专门写一个判定,因此在数值互相转化的过程中,程序无法判定这个数字具体处于哪一个难度区间中,就直接降为了最低难度。

“站在人的角度上来看, />

莉莉丝简直是瞠目结舌,虽然她仍旧无法接受,但从程序的角度来看,这个bug的出现还真就是合情合理。

而且,这并非顾凡信口开河,其他游戏也出现过类似的bug。

莉莉丝很快又意识到了新的问题:“但假设真的如你所说,这个特例应该很难触发才对吧?只有在进入boss房的时候难度数值刚好卡在999带小数的情况,才会触发。可是为什么到了游戏里,人人都能触发了!!”

顾凡轻咳两声:“这个……我看一下。”

他还是打

本章未完,点击下一页继续阅读。

书页 目录
新书推荐: 无职转生:魅魔剑神?我不认! 火影:谁让他进砂隐的? 网游:开局刮刮乐,觉醒唯一SSS天赋 系统很抽象,还好我也是 无限恐怖:开局复制罗莉气晕郑咤 东京:幕后玩家 斗罗:变废柴后,她成了唐三姐姐 游戏融合现实,我能一剑开天 非常规数码宝贝 神话再临!从民俗志怪开始
返回顶部