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

查看:1081
本文介绍了如何在C#中使用XOR的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在我的窗口应用程序中执行XOR处理.假设我有这样的数据:
我想执行(82 21 B3 00 00 01 DB 03 10 00 10)的XOR,此数据为十六进制.

I want to do XOR process in my window application. Suppose i have data like this:
XOR of (82 21 B3 00 00 01 DB 03 10 00 10) and i want to do this process.This data is in hexadecimal. How can i do this can any one solve this.

推荐答案

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

Use ^ for bitwise XOR in C#, for example:

a = a ^ c;   (or simply:   a ^= c;)




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




Here is my Method for checksum calucation, have it

static private byte CalCheckSum(byte[] _PacketData,int PacketLength)
       {
           Byte _CheckSumByte = 0x00;
           for (int i = 0; i < PacketLength; i++)
               _CheckSumByte ^= _PacketData[i];
           return _CheckSumByte;
       }



谢谢
--RA



Thanks
--RA


我希望这可以解决您的问题.

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


例如:
I hope this will solve ur Problem.

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


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


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


//16 convert result to hex


您可以使用^符号进行异或.
试试类似
的东西
You can XOR using the ^ symbol.
Try out something like
int d1 = Convert.ToInt32(hex1, 16);
int d2 = Convert.ToInt32(hex2, 16);
int r = dec1 ^ dec2;


这篇关于如何在C#中使用XOR的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆