zoukankan      html  css  js  c++  java
  • 2的幂的指数运算特殊实例

    ---恢复内容开始---

    在文章“2的幂的合并运算实例”中展示了2的幂指数合并运算的基本规则。在合并2的幂时还用到了两条规则,我称之为2的幂的加倍幂运算和2的幂的减半幂运算。这并非标准规则,只适用于2的幂。尽管已经有了乘法和除法幂规则,但我已经发现了其在加法和减法幂运算中的价值。我将说明这些规则并展示用例。

    2的幂的加倍幂运算规则

    下面是我称之为2的幂的加倍幂运算规则:

    2a + 2a = 2a+1

    (2a+1是2a的平方,也就是双倍的2a.)

    例如,24 + 24 = 25, 和 2-2 + 2-2 = 2-1.

    一般遇到幂的加法,你无需考虑运算规则,但这里需要。做自身的加法等于翻倍,等于乘以2-是2的幂。本规则是2的幂的求积规则的隐秘形式。下面是数学过程:

    2a + 2a = 2a · 2 = 2a · 21 = 2a+1

    实例

    一个例子就是将表示为2的幂形式的二进制数相加的时候。例如,101和1100相加,你加的是22 + 20 和 23 + 22, 得 23 + 22 + 22 + 20. 你希望合并2的幂来简化算式。根据2的幂的加倍幂运算规则可知 22 + 22 = 23. 现在有了两个23, 我们有23 + 23 = 24. 最终结果24 + 20 = 二进制的10001 .

    2的幂的减半幂运算

    下面是我称之为2的幂的减半幂运算的规则:

    2a – 2a-1 = 2a-1

    (2a-1 的平方是2a; 是2a的一半。)

    例如,24 – 23 = 23, 和 2-2 – 2-3 = 2-3.

    同样,你通常不需要考虑幂运算的减法规则,但这里需要。减掉一半就等于减半,乘以1/2或除以2 — 都是2的幂. 本规则是2的幂的求积规则或求商规则(分别)的隐秘形式。下面是数学式:

    2a – 2a-1 = 2a – 2a/2 = (2·2a – 2a)/2 = (2a(2-1))/2 = 2a/2 = 2a-1 .

    上面是啰嗦形式,为了更明确展示减半的过程;下面是简明形式:

    2a – 2a-1 = 2a-1(2-1) = 2a-1

    实例

    在解决如下无限几何学式子时我会使用这些规则:

    1/2 − 1/4 + 1/8 − 1/16 + 1/32 – 1/64 + …

    维基百科的解决方法是首先提取1/2:

    1/2 − 1/4 + 1/8 − 1/16 + 1/32 – 1/64 + …

    = 1/2 (1 – 1/2 + 1/4 – 1/8 + …)

    mbox{footnotesize{displaystyle = frac{1}{2}sum_{i=0}^infty left(-frac{1}{2}
ight)^{i}}}

    然后使用下面的公式来替换求和:

    mbox{footnotesize{displaystylesum_{i=0}^infty r^{i} = frac{1}{1-r}}}

    r = -1/2, 化简为

    mbox{footnotesize{displaystyle frac{1}{2} cdot frac{1}{frac{3}{2}} = 1/3}}}

    而我更直接。我不提取1/2,我从使用2的幂的减半规则来替换相邻元素入手:

    1/2 − 1/4 = 1/4, 1/8 − 1/16 = 1/16, 1/32 – 1/64 = 1/64, …

    最后剩下 1/4 + 1/16 + 1/64 + 1/256 + 1/1024, 写作

    mbox{footnotesize{displaystyle sum_{i=1}^infty left(frac{1}{4}
ight)^{i}}}

    这次使用下面的公式来化简:

    mbox{footnotesize{displaystylesum_{i=1}^infty r^{i} = frac{r}{1-r}}}}

    令r = 1/4, 得到

    mbox{footnotesize{displaystyle frac{frac{1}{4}}{frac{3}{4}} = 1/3}}}

    我喜欢我的证明因为使用的是正数r,这更容易理解。你可以把算式理解为二进制数 (0.01).

  • 相关阅读:
    SRF 认证
    Python getattr
    jQueryattr()与prop()之间的区别
    鼠标事件(拖拽)
    Python中操作MySQL的模块---pymsql
    C++ 存储类
    C++ 修饰符类型
    C++ 变量作用域
    C++ 变量类型
    C++ 数据类型
  • 原文地址:https://www.cnblogs.com/sirlipeng/p/5367197.html
Copyright © 2011-2022 走看看