将本站设为首页
收藏生存官网,记住:www.sc5235.com
账号:
密码:

生存中文:看啥都有、更新最快

生存中文:www.sc5235.com

如果你觉得好,恳请收藏

您当前的位置:生存中文 -> 当我写了个BUG却变成核心玩法 -> 第470章 还有高手?

第470章 还有高手?

温馨提示:如果本章属于内容错误等情况,请点击下面的按钮发送报告,我们会在一分钟内纠正,谢谢

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

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

“就比如1000.101这个二进制数,就可以表示为1.000101 x 2^3,这有点类似于数学上的科学计数法。

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

“总之,由于存在十进制到二进制之间的转化,所以按照这种方式来计算,0.1+0.2并不等于完整的0.3,因为在计算机中,很多小数都无法用完整的二进制来表示,所以只能用近似数的方式来储存,那么两个近似数相加,也只能是一个新的近似数。

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

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

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

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

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

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

莉莉丝感到大脑冒烟:“好吧,我知道了,在计算机里面0.1+0.2≠0.3,那么这个bug又是怎么回事?”

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

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

“站在人的角度上来看,4999.99当然还是处于5000以内的区间,但对于程序来说却并不是如此。也就是说,0.1+0.2=0.30000000000000004,它溢出了0.3


  本章未完,请点击下一页继续阅读!
上一页 1234下一页

看了《当我写了个BUG却变成核心玩法》的书友还喜欢看

斗破:阳帝
作者:叫我老唐
简介: 人在斗破,稳健发育。没有系统,天赋流。对萧炎不刻意针对,不开后宫,合理谋取机缘。
更新时间:2025-03-31 22:06:07
最新章节:第1005章 白衣女子
让你打怪兽,你唤醒加坦杰厄?
作者:幻月mvp
简介: (奥特曼同人)(脑洞大开)(逻辑合理)陈御无意间启动了一款“奥特格斗进化”游戏,被带...
更新时间:2025-03-31 22:05:00
最新章节:第一千一百五十三章 救人的杰顿
儒道至上?我在异界背唐诗!
作者:张亦安
简介: 汉语言专业大学生词宋穿越异界,来到了一个儒道之上的奇特世界,在这里,只有文人才能掌控...
更新时间:2025-03-31 22:14:33
最新章节:第 1173 章 入剑帝天宫,剑骨有灵,被算计了???
谍影:命令与征服
作者:拉丁海十三郎
简介: ……小萌新意外进入力行社特务处,唯一能力,就是可以准确分辨出谁是隐藏的日本人。
更新时间:2025-03-31 21:45:00
最新章节:第1646章,游走的幽灵……
文豪:这孩子打小就聪明
作者:一切以大橘为重
简介: “你数理化不及格,大学都难考。看看隔壁小陆,那孩子打小就聪明,他数理化也差,依旧上了...
更新时间:2025-03-31 22:10:29
最新章节:明天八千字
白夜浮生录
作者:夜厌白
简介: 人间有这样十二位走无常,江湖人称——

“黄泉十二月”。行走...
更新时间:2025-03-31 22:15:19
最新章节:第三百九十九回:不可在意