对数是乘方的逆运算。因为 10³ = 1000,所以 log₁₀ 1000 = 3,也就是回答“要乘多少次才能得到这个数”。科学和工程中用对数把氢离子浓度、声音强度、地震能量等跨越巨大范围的量压缩成便于处理的数。本指南介绍 SciKey 的对数函数、换底公式、对数运算法则和实战例题。
1. SciKey 的对数函数
| 输入 | 含义 | 示例 |
|---|---|---|
log(x) | 常用对数(以 10 为底) | log(1000) = 3 |
ln(x) | 自然对数(以 e ≈ 2.71828 为底) | ln(e^2) = 2 |
log(a, x) | 以 a 为底 x 的对数 logₐx | log(2, 8) = 3 |
log2(x) | 以 2 为底的对数 | log2(1024) = 10 |
log(a, x) 中底数在前,与卡西欧计算器的顺序相同。log(2, 8) 是 log₂8 = 3,而 log(8, 2) 是 log₈2 = 0.333333333333(= 1/3)。电子表格的 LOG 函数是 LOG(数值, 底数),顺序相反,在两者之间搬运公式时要小心。
逆运算是 10^x 和 e^x(或 exp(x))。10^(log(7)) 返回 7。
2. 换底公式
任何底的对数都可以用一个对数函数算出:
logₐx = ln x / ln a = log x / log a
例:log₂1000 = ln(1000)/ln(2) = 9.96578428466,与 log(2, 1000) 相同。由此还能看出 1000 用二进制表示需要 10 位(2⁹ = 512 < 1000 < 1024 = 2¹⁰)。
每个对数都要有自己的括号。ln(1000)/ln(2) 没问题;log 1000/log 2 没有函数括号,会被当作无效输入拒绝。
3. 对数运算法则
| 法则 | 公式 | 验证 |
|---|---|---|
| 积 | log(ab) = log a + log b | log(20) = log 2 + log 10 = 1.30103 |
| 商 | log(a/b) = log a − log b | log(0.5) = −0.30103 |
| 幂 | log(aⁿ) = n log a | log(2¹⁰) = 10 × 0.30103 = 3.0103 |
| 1 的对数 | log 1 = 0 | 任何底都成立 |
| 底的对数 | logₐa = 1 | ln e = 1 |
心算估计时常用的值:log 2 ≈ 0.30103,log 3 ≈ 0.47712,ln 2 ≈ 0.693147,ln 10 ≈ 2.302585。
4. 例题 1:pH
pH = −log[H⁺],其中 [H⁺] 是氢离子浓度(mol/L)。
- [H⁺] = 3.2×10⁻⁴ mol/L →
-log(3.2E-4)= 3.49485002168 - 反过来,pH 3.5 的溶液为
10^-3.5= 3.16227766017×10⁻⁴ mol/L
pH 每降低 1,氢离子浓度增加到 10 倍:pH 3 是 pH 5 的 100 倍。
-log(...) 中的负号作用于整个对数,因为函数调用比一元符号先计算。
5. 例题 2:分贝
- 功率比:dB = 10 log(P₂/P₁)。功率放大 200 倍 →
10log(200)= 23.0102999566 dB - 电压或声压比:dB = 20 log(V₂/V₁)。电压放大 5 倍 →
20log(5)= 13.9794000867 dB - 3 dB 约等于功率翻倍:
10log(2)= 3.01029995664
功率用 10、幅值用 20,这个系数差别让很多人犯错。功率与幅值的平方成正比,而 log(V²) = 2 log V,所以是 20。
6. 例题 3:复利翻倍所需时间
年复利 5% 时,本金翻倍所需的年数 n 满足 1.05ⁿ = 2:
n = ln 2 / ln 1.05 → ln(2)/ln(1.05) = 14.2066990829 年
log(1.05, 2) 也得到同样结果。常说的“72 法则”(72 ÷ 5 = 14.4 年)就是这个值的近似。
7. 例题 4:半衰期
取碳-14 的半衰期约为 5,730 年,碳-14 剩余原来 30% 的样品年龄为
t = 半衰期 × ln(剩余比例) / ln(0.5) → 5730×ln(0.3)/ln(0.5) = 9952.81285457
即约 9,950 年。ln(0.3) 和 ln(0.5) 都是负数,所以比值为正。同样的方法也适用于药物在体内的清除和电容放电(e^(−t/RC))。
电容例子: 在 RC = 2 s 的电路中,电压降到 10% 所需时间为 t = −RC ln(0.1) → -2ln(0.1) = 4.60517018599 s。
8. 例题 5:地震震级与能量
(矩)震级每增加 1,释放的能量约增加到 10^1.5 倍,即约 32 倍。震级差为 ΔM 时,能量比为 10^(1.5ΔM)。
- 6 级与 5 级:
10^1.5→ 31.6227766017 倍 - 7 级与 5 级:
10^(1.5×2)→ 1000 倍
指数是一个表达式,所以需要括号:10^(1.5×2)。如果输入 10^1.5×2,会得到 (10^1.5)×2 = 63.2455532034。
9. 例题 6:计算大数的位数
正整数 N 的位数为 floor(log N) + 1。2⁶⁴ 有几位?floor(64log(2))+1 → 20。确实,2⁶⁴ = 18,446,744,073,709,551,616 有 20 位。对数能帮您估计难以直接计算的数的大小。
10. 定义域:会报错的情况
实数对数只对正数有定义。
log(0)→ 数学错误。x 趋近 0 时,log x 无限减小(−∞)。ln(-5)→ 数学错误。负数的对数是复数,而 SciKey 不支持复数。- 小于 1 的正数的对数只是负数,并不是错误:
log(0.001)= −3。
如果算式报错,请检查对数里的值是否变成了 0 或负数,例如 x = 1.2 时的 ln(1-x)。
11. 常见错误
- 混淆 log 与 ln。 在某些领域(纯数学、部分物理教材)中,“log”指自然对数。请确认资料使用的是哪个底。
- log(a, x) 的参数顺序。 在 SciKey 和卡西欧计算器中,底数在前。
- 把 log(a+b) 拆成 log a + log b。 对数把积变成和,但不能化简和。正确的法则是 log(ab) = log a + log b。
- 分贝系数。 功率用 10,幅值用 20。