如何在c#中使用XOR[英] how to use XOR in c#

问题描述

我想在我的窗口应用程序中进行异或处理.假设我有这样的数据:
(82 21 B3 00 00 01 DB 03 10 00 10)的异或,我想做这个过程.这个数据是十六进制的.我该怎么做,任何人都可以解决这个问题.

推荐答案

在 C# 中使用 ^ 进行按位异或,例如:

a = a ^ c;(或简单地说:a ^= c;)



这是我的校验和计算方法,有它

静态 私有 字节 CalCheckSum(byte[] _PacketData,int PacketLength){字节 _CheckSumByte = 0x00;for (int i = 0; i< PacketLength; i++)_CheckSumByte ^= _PacketData[i];返回 _CheckSumByte;}


谢谢
--RA

我希望这能解决你的问题.

http://msdn.microsoft.com/en-us/library/zkacc7k1.aspx[^]


例子:
Convert.ToString(0xf8 ^ 0x3f ^ 0x3f, 16);

//16 将结果转换为十六进制

您可以使用^符号进行异或.
尝试类似
int d1 = Convert.ToInt32(hex1, 16);int d2 = Convert.ToInt32(hex2, 16);int r = dec1 ^ dec2;

本文地址:https://www.itbaoku.cn/post/1394804.html