专业编程基础技术教程

网站首页 > 基础教程 正文

Python位运算实现四则运算(python位运算符号含义)

ccvgpt 2025-01-31 12:10:06 基础教程 11 ℃

Python位运算:

位运算符

Python位运算实现四则运算(python位运算符号含义)

说明

使用形式

&

按位与

1&1=1,0&1=0,1&0=0,0&0=0

|

按位或

1|1=1,1|0=1,0|1=1,0|0=0

^

按位异或

1^1=0,0^0=0,1^0=1,0^1=1

~

按位取反

~1=0,~0=1

<<

按位左移

6<<1,表示;6<<2,表示;6<<3,表示

>>

按位右移

6>>1,表示;6>>2,表示;6>>3,表示

由于计算机底层只能识别0和1,这样的二进制符合。所以,使用二进制进行计算速度非常快。下面我们用位运算的方式实现加减乘除和移位操作。

代码实现:

# 位运算实现加法操作
def add(a, b):
    while b:
        sum = a ^ b  # 异或操作
        temp = (a & b) << 1  # 与操作和左移位操作
        a = sum
        b = temp

    return a


# 位运算实现减法操作
def subtraction(a, b):
    if a < b:
        b = ~b
        return -~add(a, b)
    else:
        a = ~a
        return ~add(a, b)


# 位运算实现乘法操作
def multiplication(a, b):
    sum = 0

    while b:
        sum = add(sum, a)
        b -= 1

    return sum


# 位运算实现除法操作
def division(a, b):
    if a < b:

        return 0

    else:

        res = division(subtraction(a, b), b) + 1

    return res


# 左移位操作 相当于十进制做乘法
def left_move(a, b):
    return a << b


# 右移位操作 相当于十进制做除法
def right_move(a, b):
    return a >> b


if __name__ == '__main__':
    # 位运算实现加法操作
    print(add(15, 3))
    # 位运算实现减法操作
    print(subtraction(11, 11))
    # 位运算实现乘法操作
    print(multiplication(6, 13))
    # 位运算实现除法操作
    print(division(33, 3))

    # 左移位操作
    print(left_move(6, 2))
    # 右移位操作
    print(right_move(6, 1))

运行结果

18
0
78
11
24
3

最近发表
标签列表