def _xr(a, b):
    size_b = len(b)
    c = 0
    while c < size_b - 2:
        d = b[c + 2]
        d = ord(d[0]) - 87 if "a" <= d else int(d)
        d = rshift(a, d) if "+" == b[c + 1] else a << d
        a = a + d & 4294967295 if "+" == b[c] else a ^ d

        c += 3
    return a
Exemple #2
0
    def _xr(self, a, b):
        size_b = len(b)
        c = 0
        while c < size_b - 2:
            d = b[c + 2]
            d = ord(d[0]) - 87 if 'a' <= d else int(d)
            d = rshift(a, d) if '+' == b[c + 1] else a << d
            a = a + d & 4294967295 if '+' == b[c] else a ^ d

            c += 3
        return a
Exemple #3
0
def test_rshift():
    value, n = 1000, 3

    result = utils.rshift(value, n)

    assert result == 125
Exemple #4
0
def test_rshift():
    value, n = 1000, 3

    result = utils.rshift(value, n)

    assert result == 125