您现在的位置: 首页 > 网站导航收录 > 百科知识百科知识
为什么浮点运算有误差?
表示,整数,浮点数为什么浮点运算有误差?
发布时间:2020-12-06加入收藏来源:互联网点击:
为什么浮点运算有误差?
回答于 2019-09-11 08:43:50
回答于 2019-09-11 08:43:50
主要是因为计算机内部运算是通过2进制的,无法很精确的计算浮点数据
回答于 2019-09-11 08:43:50
要搞清楚这个问题,首先搞清楚什么是浮点数,以及浮点数如何表示、如何运算。
浮点数,是属于有理数中某特定子集的数的数字表示,在计算机中用以近似表示任意某个实数。具体的说,这个实数由一个整数或定点数(即尾数)乘以某个基数(计算机中通常是2)的整数次幂得到,这种表示方法类似于基数为10的科学计数法。
一个浮点数a由两个数m和e来表示:a = m × b^e。在任意一个这样的系统中,我们选择一个基数b(记数系统的基)和精度p(即使用多少位来存储)。m(即尾数)是形如±d.ddd...ddd的p位数(每一位是一个介于0到b-1之间的整数,包括0和b-1)。如果m的第一位是非0整数,m称作规格化的。有一些描述使用一个单独的符号位(s 代表+或者-)来表示正负,这样m必须是正的。e是指数。
既然浮点数是一个近似表示,那么它就一定存在截断误差。所以,最后的结果存在误差就不可避免了。
上一篇:安阳洛阳等挖出大量殷商活人祭坑,多达上千,为何我感觉《史记》没有记载呢?
下一篇:返回列表
相关链接 |
||
网友回复(共有 0 条回复) |