浮点数始末详解|科学计数法、浮点数表示、精度有效值、规格化与非规格化

如果直接看浮点数表示法有点费力或者不好理解,不妨复习一下科学计数法。毕竟我们一直接触十进制,从十进制的角度可能更好理解其特性。

科学计数法 Scientific Notation

1. 科学计数法的定义

  1. 概述

    它将一个数表示为一个1到10之间的数字与10的幂的乘积。

    即一个数被表示为 A × 1 0 n A \times 10^n A×10n的形式,其中:

    • A A A是一个大于等于1且小于10的实数(通常是一个整数或小数)。

    规定了A的大小,这点就对应了浮点数表示中的规约或者说规范化。
    其目的是为了保证表示法的准确性和一致性:不然 20 ∗ 1 0 3 20*10^3 20103 2 ∗ 1 0 4 2*10^4 2104,或者等等其他表示都可以表示为20000,到底用哪个表示呢

  • n n n是一个整数,表示10的指数。
    示例:
    • 1234 1234 1234可以表示为 1.234 × 1 0 3 1.234 \times 10^3 1.234×103
    • 0.00567 0.00567 0.00567可以表示为 5.67 × 1 0 − 3 5.67 \times 10^{-3} 5.67×103
  1. 应用场景
    科学计数法在许多领域都有应用,包括工程学、物理学、化学和计算机科学。
    在计算机编程中,科学计数法常用于浮点数的存储和计算。
  2. 优点
    • 简洁:可以简化表示非常大或非常小的数,避免写出一长串数字。
    • 方便:在科学计算中,使用科学计数法可以简化运算过程。
  3. 使用科学记数法,一个数的数量级精确度数值都较容易看出,
    例如:
  4. 一个质子质量的数值为︰0.00000000000000000000000167262158。科学记数法的形式︰ 1.67262158 × 1 0 − 24 1.67262158×10^−24 1.67262158×1024
  5. 若以公斤为表示单位,则木星的质量值约为:1898130000000000000000000000科学记数法的形式︰ 1.89813 × 1 0 27 1.89813×10^{27} 1.89813×1027

2. 精确度与有效数字

  1. 精确度(Precision)指的是数值表示的准确性和细节程度。
  2. 有效数字(Significant Figures)是指在一个数中,从第一个非零数字起,直到末尾数字止的所有数字。表示了数据的精度和可靠性。
  3. 科学记数法中,尾数也被称作有效数
    科学计数法的精确度由有效数字A的位数决定。
    13410,精确到十位,记作: 1.341 × 1 0 4 1.341 \times 10^4 1.341×104
    13410 ,精确到百位,记作: 1.34 × 1 0 4 1.34 \times 10^4 1.34×104
  4. 有效数字的规则
  5. 所有非零数字都是有效的:例如,123.45有五位有效数字(1、2、3、4、5)。
  6. 两个非零数字之间的零也是有效的:例如,101.1203有七位有效数字(1、0、1、1、2、0、3)。
  7. 前缀零始终无效:例如,0.00052只有两位有效数字(5和2)。
  8. 包含小数点的数中,结尾的零是有效的:例如,12.2300有六位有效数字(1、2、2、3、0、0)。
  9. 不包含小数点的数,结尾的零可能有效也可能无效,取决于上下文。但在科学计数法中,有效数字便能够判别。
    例如,1300的有效数字可能是2位、3位或4位,具体取决于上下文。
    科学记数法可以帮助明确有效数字。例如,0.000122300可以写成 1.22300 × 1 0 − 4 1.22300 \times 10^-4 1.22300×104,这样就明确了有六位有效数字
    参考:http://www.shuxueji.com/w/2623

3. 转换为科学计数法

要将一个数转换为科学计数法,需要执行以下步骤:

  1. 如果数字是整数并且大于或等于``10,则将数字的小数点向左移动,直到只有一个非零数字位于小数点左侧。
  2. 如果数字是整数并且小于``1,则将数字的小数点向右移动,直到只有一个非零数字位于小数点左侧。
  3. 如果数字是小数,则将小数点向左或向右移动,使得小数点左侧只有一个非零数字。
  4. 记录小数点移动的位数,这个位数就是10的指数。

示例:

  • 12345 12345 12345转换为科学计数法:
  • 移动小数点,得到 1.2345 × 1 0 4 1.2345 \times 10^4 1.2345×104
  • 0.000567 0.000567 0.000567转换为科学计数法:
  • 移动小数点,得到 5.67 × 1 0 − 4 5.67 \times 10^{-4} 5.67×104

4. 运算

科学计数法的运算规则如下:

  1. 加法和减法
    a × 1 0 n + b × 1 0 n = ( a + b ) × 1 0 n a \times 10^n + b \times 10^n = (a+b) \times 10^n a×10n+b×10n=(a+b)×10n
    例如: ( 3 × 1 0 4 + 4 × 1 0 4 = 7 × 1 0 4 ) (3 \times 10^4 + 4 \times 10^4 = 7 \times 10^4) (3×104+4×104=7×104)
  2. 乘法
    ( a × 1 0 m ) × ( b × 1 0 n ) = ( a × b ) × 1 0 m + n (a \times 10^m) \times (b \times 10^n) = (a \times b) \times 10^{m+n} (a×10
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值