模2运算

简介:将数字换算成二进制的形式进行运算,无进位也无借位。

模2加法

1 + 1 = 0
1 + 0 = 1
0 + 1 = 1
0 + 0 = 0

    1010101
+   1000101
————————————
    0010000

    10101011
+   10100111
+   11100010
————————————
    11101110

奇数个1相加得1,偶数个1相加得0    

模2减法

1 - 1 = 0
1 - 0 = 1
0 - 1 = 1
0 - 0 = 0

    1010101
-   1000101
————————————
    0010000

    10101011
-   10100111
-   11100010
————————————
    11101110    

模2乘法

1 x 1 = 1
1 x 0 = 0
0 x 1 = 0
0 x 0 = 0

    1010101
x   1000101
————————————
    1000101

模2除法

运算的时候每位都进行xor运算
规则:被除数除以除数,被除数首位为1时,商1,为0时商0
     所得余数去除首位(左移一位)
     重复上一步直到被除数位数少于除数位数
例子:1111000对除数1101做模2除法:
         1011             商
     ------------
1101/ 1111000             被除数 首位为1,商为1
      1101                除数
     ------------
      0010000             余数去除首位,作为新的被除数,首位为0,商为0
       0000               被除数首位为0,则除数就为0
     ------------
       010000             余数去除首位,作为新的被除数,首位为1,商为1
        1101              被除数首位为1,除以除数 
     ------------
        01010             余数去除首位,作为新的被除数,首位为1,商为1
         1101             被除数首位为1,除以除数  
     ------------
         0111             余数去除首位,为111位数为3,小于除数位数4,不再进行运算,得到结果
结果:商1011余111        


crypto      misc

本博客所有文章除特别声明外,均采用 CC BY-SA 3.0协议 。转载请注明出处!