-47的原码反码补码
时间: 2023-11-20 22:55:17 浏览: 426
原码、反码、补码
-47的原码为:1101 1111,因为-47是负数,所以最高位为1,其余位为47的二进制表示取反(1变0,0变1)得到。
-47的反码为:1010 0000,因为-47是负数,所以最高位为1,其余位为47的二进制表示取反(1变0,0变1)得到,再将最高位不变。
-47的补码为:1010 0001,因为-47是负数,所以最高位为1,其余位为47的二进制表示取反(1变0,0变1)得到,再将最高位加1。
```python
num = -47
print("原码为:", bin(num & 0b11111111)[2:].zfill(8))
print("反码为:", bin((~num) & 0b11111111)[2:].zfill(8))
print("补码为:", bin((~num + 1) & 0b11111111)[2:].zfill(8))
```
阅读全文