所以我正在玩一些代码,我试着玩电源操作员。所以我想也许我可以使用插入符号(^
)用于此目的,但在使用它之后:
for i in 0..10
puts "#{i} #{1^i}\n"
end
我得到了一些非常时髦的结果
0 - 1
1 - 0
2 - 3
3 - 2
4 - 5
5 - 4
6 - 7
7 - 6
8 - 9
9 - 8
10 - 11
我看到的唯一模式是奇数上的-1和偶数上的+1,但是当我尝试时:
for i in 0..10
puts "#{i} #{2^i}\n"
end
我得到:
0 - 2
1 - 3
2 - 0
3 - 1
4 - 6
5 - 7
6 - 4
7 - 5
8 - 10
9 - 11
10 - 8
第w!所以我一直向上4^i
并绘制它们,1^i & 3^i
与decent patterns一起出现但2^i & 4^i
只是到处都没有明显的模式(尽管不太可能) )只有11个绘图点,所以我来找你们女士和男士们问你:
^
用于什么?!
答案 0 :(得分:21)
在大多数编程语言中,^
是XOR运算符(Exclusive Or in Wikipedia)。 XOR是CPU中最基本的操作之一,它通常用于归零(考虑a ^= a
),因为它很快并且操作码很短。
对于电源功能,您必须使用例如**
(例如红宝石),java.lang.Math.pow
,math.pow
,pow
等。
事实上,我无法命名使用^
的编程语言。它在LaTeX中用于格式化(作为上标,而不是电源功能,技术上)。但我一直看到的两个变体是**
(因为幂函数与乘法直接相关)和pow(base, exp)
。
请注意,您可以使用班次更快地计算2的整数幂。