|
前久寫《不用中間數(shù)交換兩個(gè)變量的方法》反響不錯(cuò),其中用到了異或運(yùn)算。今天看《通信原理》書,提了數(shù)字信息可以很方便地進(jìn)行加密與解密運(yùn)算,用到了異或。
隨手寫了個(gè)實(shí)例玩玩:
unsigned int aa=3456;
void main( void )
{
unsigned int pwd=5438;
aa ^= pwd; //加密
aa ^= pwd; //解密
}
沒有用函數(shù)、指針傳遞參數(shù)形式來寫,更顯的簡單,就兩行語句。
定理:一個(gè)數(shù)與另一個(gè)數(shù)做兩次異或運(yùn)算后得到原值,或者說恢復(fù)到原來的值。
運(yùn)行過程如圖,感謝IAR的方便。
|
-
1.jpg
(23.66 KB, 下載次數(shù): 274)
下載附件
2019-12-31 17:15 上傳
加密運(yùn)算前
-
2.jpg
(23.95 KB, 下載次數(shù): 252)
下載附件
2019-12-31 17:15 上傳
已加密
-
3.jpg
(19.31 KB, 下載次數(shù): 249)
下載附件
2019-12-31 17:15 上傳
解密運(yùn)算后,得到原值
評分
-
查看全部評分
|