Tag: xor

XOR使用数学运算符

如何使用+, – ,*,/等基本数学运算符实现XOR 更新:实际上,我需要跟踪具有布尔值的两个矩阵的变化。 这可以通过使用其他矩阵中的相应值对每个值进行异或来完成。 但是,Lp_Solve库不支持XOR操作。 此外,它只接受线性方程。

检查两个整数是否在0的同一侧的最快方法

我需要检查两个整数是否在零的同一侧多次。 我不在乎它是积极的还是消极的,只是它是同一面……而且表现非常重要。 目前我这样做: if (int1 == 0 || int2 == 0) { // handle zero } else if ((int1 ^ int2) > 0) { // different side } else { // same side } 这比速度提高30%(用卡尺测试)更明显: if ((int1 > 0 && int2 > 0) || (int1 < 0 && int2 < 0)) { 可以更快地完成吗? 如果有人想看到我用于30%的测试框架,它就在这里。 我使用了卡尺0.5-rc1 […]

两个短整数的异或

我正在以传统方式使用XOR ^运算符计算两个short integers XOR ^ 。 以下是方法 – short a=197; short b=341; short y = (short) (a ^ b); 但是XOR总是返回整数,但在我的情况下输入是短整数,这就是为什么我正在向XOR输出做空。 XOR可以用不同的方式计算(例如:使用BigInteger等),但性能明智(更少的时间),这对短整数最好? 在记住性能的同时,我应该首先使用Integer.toBinaryString(number)将每个短整数转换为二进制数,然后应用按位异或?

按位XOR java长

我在Ubuntu 12.04上使用Oracle Java 7.51,并试图这样做 long a = 0x0000000080000001 ^ 0x4065DE839A6F89EEL; System.out.println(“result “+ Long.toHexString(a)); Output: result bf9a217c1a6f89ef 但是我期待结果是4065de831a6f89ef ,因为^运算符在Java中是一个按位XOR。 我读错了Java规范的哪一部分?

Java中的XOR神经网络

我正在尝试用Java中的XOR函数实现和训练具有反向传播的五神经元神经网络。 我的代码(请原谅它的丑陋): public class XORBackProp { private static final int MAX_EPOCHS = 500; //weights private static double w13, w23, w14, w24, w35, w45; private static double theta3, theta4, theta5; //neuron outputs private static double gamma3, gamma4, gamma5; //neuron error gradients private static double delta3, delta4, delta5; //weight corrections private static double dw13, dw14, dw23, dw24, […]

Graphics.setXORMode(Color)用简单的术语做什么?

这是我读到的内容,但无法准确理解它的作用: 实现橡皮筋的一种方法是以XOR模式绘制。 您可以通过调用图形上下文的setXORMode()方法并将颜色传递给它来设置XOR模式 – 通常是背景颜色。 在此模式下,像素不会直接写入屏幕。 您正在绘制的颜色与当前显示的像素的颜色以及您指定的第三种颜色相结合,通过对它们进行异或运算,并将得到的像素颜色写入屏幕。 第三种颜色通常设置为背景颜色,因此写入的像素的颜色是以下操作的结果: resultant_Color = foreground_color^background_color^current_color 我知道XORing是如何工作的,但不知道上段是什么意思。 请为我说明一下

java引用之间的xor操作

我想为xor-linked列表编写java代码。 有人可以建议我如何在引用之间执行xor操作吗?

为什么这个语句不适用于java x ^ = y ^ = x ^ = y;

int x=1; int y=2; x ^= y ^= x ^= y; 我期待值被交换。但它给出x = 0和y = 1。 当我尝试使用C语言时,它会给出正确的结果。