浮点运算与数值运算的误差
浮点运算的误差
为什么有
0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1
= 9.999999999999999e − 001
分析: MATLAB使用浮点数,而浮点数中没有0.1,只能用二进制中最接近0.1的数来近似表示.
结果必然有误差!
数值计算不是使用全部实数,也没有极限与无限等实数概念.
使用浮点算术体系(有限精度的有限数集合),计算中会产生:
• 舍入(roundoff)
• 下溢出(underflow)
• 上溢出(overflow)
• 机器最小精度(eps)
• 非数(NaN)
双精度浮点数表示形式与存储方式:
11bit存e
浮点数用 ± 1 + · 2
64位(bit )=1字节(word)
正负号用1bit 52bit存f
浮点数的整个小数部分不是f, 而是1+f它占53位.然而首位的1并不需要存
储,这样IEEE格式便将65位的信息打包成64位的一个字节(word ).
浮点数表示中整数部份由2e (二进制)表示, 的取值限制整数的范围.
其中210=1024 ,用去10位(bit) ,再用1位(bit)表示指数,共用11位.
e 的实际取值为-(210-2) = e =(210-1) ;
即-1022 = e =1023, 得最小数2-1022 ,最大数21023
e 的正负值取值范围不同,正值为1到+1023 ,所以不必存储e正负号.
e=1024, f=0 表示无穷大(Inf),e=1024, f ≠0 表示非数(NaN ).
e=-1024 时表示最小的规范数, e=-1023 时表示最小的非规范数.
浮点数的表示法 x = ± 1 + · 2
f 的取值限制数的精度.
0 ≤f ≤1; 2e ≤2e +f · 2e 2e+1
+1 52 −52
它表示利用 在[2 , 2 ] 之间等间隔插入的2 个数, 相邻小数的间隔为2 ,
全部小数的取值为 · 2 = · 2−52 · 2 ,n= (0 ,1 ,2 ,3…, 252 -1)
例如当整数值为
二进制2e 2-1022 2-2 2-1 20 21 22 23 21023
十进制数 最小实数 ... 1/4 1/2 1 2 4 8 ... 最大实数
小数值为(以1与2之间插入的小数为例)
0 0 0 -52 0 -52 0 51 -52 1
2 (1+f) 2 =(1+0) 2 (1+2 ) 2 (1+2·2 ) ... 2 (1+2 ·2 ) 2 (1+0)=2
十进制数 1 1+2-52 = 1 1 1+2·2-52 ... 1+(252 -1)*2-52 2
45
您可能关注的文档
- 01 几何光学的基本原理.pdf
- 1.动力学基本概念.pdf
- 1机械波的几个概念.pdf
- 02 球面折射成像.pdf
- 2.反应速率方程---简单级数反应积分速率方程.pdf
- 2平面简谐波的波函数.pdf
- 03 薄透镜成像宽.pdf
- 3.溶液反应动力学.pdf
- 2.过渡态理论大学物理量子物理.pdf
- 1 氢原子光谱大学物理量子物理.pdf
- 浙江省温州市2024-2025学年七年级上学期语文期末考查卷.docx
- 精品解析:北京市建华实验学校2024-2025学年七年级下学期期中英语试题(原卷版).docx
- 精品解析:北京市通州区2024-2025学年七年级下学期期末考试英语试卷(原卷版).docx
- 精品解析:北京市回民学校2024-2025学年九年级上学期期中语文试题(解析版).docx
- 精品解析:北京市海淀区2025-2026学年九年级上学期期末语文试题(解析版).docx
- 精品解析:北京市东城区汇文中学2025-2026学年八年级上学期期中语文试题(原卷版).docx
- 精品解析:北京市回民学校2024-2025学年九年级上学期期中语文试题(原卷版).docx
- 精品解析:2024-2025学年广东省广州市从化区街口镇中心小学人教版五年级上册期中测试数学试卷(解析版).docx
- 精品解析:北京市通州区2024-2025学年七年级下学期期末考试英语试卷(解析版).docx
- 精品解析:北京市建华实验学校2024-2025学年七年级下学期期中英语试题(解析版).docx
原创力文档

文档评论(0)