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 + …)

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

r = -1/2, 化简为

而我更直接。我不提取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, 写作

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

令r = 1/4, 得到

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

时间: 2024-07-29 12:42:18

2的幂的指数运算特殊实例的相关文章

Python除法运算和幂运算代码实例

"//"运算 除法运算符是"/",这个人人皆知道,但是这个二元运算符"/"求出来的结果都是取决于操作数本身的 20 / 3620 / 3.06.66666666666666720.0 / 36.66666666666666720.0 / 3.06.666666666666667 使用"/"运算符时,只要有一个操作数是浮点数,那么产生的结果就是浮点数结果,我们称之为真除,但是要是两个操作数都是整型数的话,那么产生的结果就是一个舍

2的幂的合并运算实例

Powers of two can be combined, under the laws of exponents, to create other powers of two. Under these rules, you can multiply powers of two, divide powers of two, or raise a power of two to a power and still get another power of two. You can combine

Java位运算经典实例

一 源码.反码.补码 正数的源码.反码.补码相同,例如5:            5的源码:101            5的反码:101            5的补码:101 负数的源码.反码.补码不同,例如-5:            -5的源码:10000101            -5的反码:111111010 (取反操作)            -5的补码:111111011 (补码加1操作) 计算机所有数据都以补码存储和运算. 二 位操作       位操作包含&,|,!分别表示

hdu 2837 Calculation【欧拉函数,快速幂求指数循环节】

欢迎关注__Xiong的博客: http://blog.csdn.net/acmore_xiong?viewmode=list Calculation Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 1912    Accepted Submission(s): 413 链接:click me Problem Description A

数论——快速幂,模运算及快速幂求逆元

一.快速幂 原理: 快速幂的原理十分简单. ak=a2^0*a2^1*a2^2*…a2^x,其中k=20+21+22+…+2x. 这显然是正确的.因为任何一个数都可以表示成二进制. 接下去利用位运算实现即可. 代码实现 模板题链接:快速幂 代码模板如下:时间复杂度O(logk) int qmi(int a,int k,int p) { int res=1%p; while(k) { if(k&1)res=(long long)res*a%p; a=(long long)a*a%p; k>&g

模指数运算

离散数学p216

HDU 1097 A hard puzzle【快速幂取模运算】

A hard puzzle Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 30984    Accepted Submission(s): 11109 Problem Description lcy gives a hard puzzle to feng5166,lwg,JGShining and Ignatius: gave a a

NYOJ题目112指数运算

------------------------ 好水啊.... AC代码: 1 import java.io.BufferedReader; 2 import java.io.IOException; 3 import java.io.InputStreamReader; 4 import java.math.BigInteger; 5 6 public class Main { 7 8 public static void main(String[] args) throws IOExcep

位运算及其应用实例(1)

摘要 位运算是C/C++中的基本运算之一,即便是这样,它对大多数程序员来说是一个比较陌生的运算——大多数程序员很少使用位运算.本篇先简要介绍基本的位运算操作符及其用法(何时使用),然后介绍位运算符的几个典型应用: (1)      三种不用临时变量交换两个整数的实例,并分析每个实例的优缺点 (2)      进制转换,通过位运算实现将十进制数按二进制和十六进制输出,并得出一个通用的,用于将十进制按照2的n次方进制输出的程序. (3)      给出利用位运算实现的计算整数的二进制表示中有多少个1